mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-02-03 23:40:14 +08:00
Merge branch 'master' of https://github.com/LCTT/TranslateProject
This commit is contained in:
commit
710fc42be1
45
README.md
45
README.md
@ -33,23 +33,32 @@ LCTT的组成
|
||||
-------------------------------
|
||||
|
||||
目前活跃成员有:
|
||||
[wxy](https://github.com/wxy),
|
||||
[carolinewuyan](https://github.com/carolinewuyan),
|
||||
[vito-L](https://github.com/vito-L),
|
||||
[tinyeyeser](https://github.com/tinyeyeser),
|
||||
[woodboow](https://github.com/woodboow),
|
||||
[DeadFire](https://github.com/DeadFire),
|
||||
[flsf](https://github.com/flsf),
|
||||
[theo-l](https://github.com/theo-l),
|
||||
[jasminepeng](https://github.com/jasminepeng),
|
||||
[boredivan](https://github.com/boredivan),
|
||||
[Linchenguang](https://github.com/Linchenguang),
|
||||
[gamelifedong](https://github.com/gamelifedong),
|
||||
[Maclauring](https://github.com/Maclauring),
|
||||
[lijhg](https://github.com/lijhg),
|
||||
[liuaiping](https://github.com/liuaiping),
|
||||
[younel0925](https://github.com/younel0925)。
|
||||
(更新于2013/10/3)
|
||||
[wxy](https://github.com/wxy),
|
||||
[carolinewuyan](https://github.com/carolinewuyan),
|
||||
[tinyeyeser](https://github.com/tinyeyeser),
|
||||
[vito-L](https://github.com/vito-L),
|
||||
[DeadFire](https://github.com/DeadFire),
|
||||
[flsf](https://github.com/flsf),
|
||||
[jasminepeng](https://github.com/jasminepeng),
|
||||
[luoxcat](https://github.com/Luoxcat),
|
||||
[woodboow](https://github.com/woodboow),
|
||||
[geekpi](https://github.com/geekpi),
|
||||
[runningwater](https://github.com/runningwater),
|
||||
[Linux-pdz](https://github.com/Linux-pdz),
|
||||
[bazz2](https://github.com/bazz2),
|
||||
[theo-l](https://github.com/theo-l),
|
||||
[scusjs](https://github.com/scusjs),
|
||||
[Linchenguang](https://github.com/Linchenguang),
|
||||
[Vic020](https://github.com/Vic020),
|
||||
[l3b2w1](https://github.com/l3b2w1),
|
||||
[crowner](https://github.com/crowner),
|
||||
[boredivan](https://github.com/boredivan),
|
||||
[rogetfan](https://github.com/rogetfan),
|
||||
[willqian](https://github.com/willqian),
|
||||
[Maclauring](https://github.com/Maclauring),
|
||||
[small-Wood](https://github.com/small-Wood),
|
||||
[lijhg](https://github.com/lijhg),
|
||||
(更新于2013/11/13)
|
||||
|
||||
谢谢大家的支持!
|
||||
|
||||
@ -62,3 +71,5 @@ LCTT的组成
|
||||
* 2013/09/24 鉴于大家使用Github的水平不一,容易导致主仓库的一些错误,因此换成了常规的fork+PR的模式来进行翻译流程。
|
||||
* 2013/10/11 根据对LCTT的贡献,划分了Core Translators组,最先的加入成员是vito-L和tinyeyeser。
|
||||
* 2013/10/12 取消对LINUX.CN注册用户的依赖,在QQ群内、文章内都采用github的注册ID。
|
||||
* 2013/10/18 正式启动man翻译计划。
|
||||
* 2013/11/10 举行第一次北京线下聚会。
|
||||
|
@ -1,12 +1,10 @@
|
||||
Linux中grep命令的12个实践例子
|
||||
===
|
||||
你是否遇到过需要在文件中查找一个特定的字符串或者模式的任务,但是仍然不知道从哪开始?这儿是一些**grep**的例子可以给你帮助。
|
||||
你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请**grep**来帮你吧。
|
||||
|
||||
![](http://www.tecmint.com/wp-content/uploads/2013/11/Grep-Command-Examples.png)
|
||||
|
||||
*12个grep命令的例子*
|
||||
|
||||
**grep**是每个**Linux**发行版都预装的一个强有力文件匹配搜索工具。无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过你系统的包管理器来安装它(**Debian/Ubuntu**系中的**apt-get**和**RHEl/CentOS/Fedora**系中的**yum**)。
|
||||
**grep**是每个**Linux**发行版都预装的一个强有力的文件模式搜索工具。无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过系统的包管理器来安装它(**Debian/Ubuntu**系中的**apt-get**和**RHEl/CentOS/Fedora**系中的**yum**)。
|
||||
|
||||
$ sudo apt-get install grep #Debian/Ubuntu
|
||||
|
||||
@ -16,7 +14,7 @@ Linux中grep命令的12个实践例子
|
||||
|
||||
###1.搜索和寻找文件
|
||||
|
||||
假设你已经在你的电脑上安装了一个全新的**Ubuntu**,你打算卸载**Python**。你浏览网页寻找教程,但是你发现存在两个不同版本的**Python**在使用,而你不知道你的**Ubuntu**安装器到底在你的系统中安装了哪个版本的Python,也不知道它安装了哪些模块。解决这个烦恼只需简单的运行以下命令:
|
||||
假设你已经在你的电脑上安装了一个全新的**Ubuntu**,然后你打算卸载**Python**。你浏览网页寻找教程,但是你发现存在两个不同版本的**Python**在使用,而你不知道你的**Ubuntu**安装器到底在你的系统中安装了哪个版本的Python,也不知道它安装了哪些模块。解决这个烦恼只需简单的运行以下命令:
|
||||
|
||||
$ sudo dpkg -l | grep -i python
|
||||
|
||||
@ -26,17 +24,17 @@ Linux中grep命令的12个实践例子
|
||||
ii python-openssl 0.12-1ubuntu2.1 Python wrapper around the OpenSSL library
|
||||
ii python-pam 0.4.2-12.2ubuntu4 A Python interface to the PAM library
|
||||
|
||||
首先,我们运行**dpkg -l**列出你系统上安装的**.deb**包。接着,我们使用管道将输出结果传输给命令**grep -i** python,这一步可以简单解释为把结果传输给grep然后过滤出所有含有python的项,并返回结果。只要你不打算详细的指定搜索方式,那么使用选项**-i**是个好习惯。
|
||||
首先,我们运行**dpkg -l**列出你系统上安装的**.deb**包。接着,我们使用管道将输出结果传输给命令**grep -i** python,这一步可以简单解释为把结果传输给grep然后过滤出所有含有python的项,并返回结果。–i选项用于忽略大小写,因为 grep 是大小写敏感的。使用选项**-i**是个好习惯,除非你打算进行更细节的搜索。
|
||||
|
||||
###2.搜索和过滤文件
|
||||
|
||||
grep还可以在一个或多个文件夹里用于搜索和过滤。让我们来看一个这样的情景:
|
||||
grep还可以在一个或多个文件里用于搜索和过滤。让我们来看一个这样的情景:
|
||||
|
||||
你的**Apache网页服务器**出现了问题,你不得不从许多专业网站找一个发帖询问。好心的回复你的人会让你粘贴你的**/etc/apache2/sites-available/default-ssl**文件。网友帮助了你,而假如你能移除掉所有的注释行,那么今后大家都能阅读到这个解决方案,这对你来说会会困难吗?你当然可以很容易的做到!只需这样做就可以了:
|
||||
你的**Apache网页服务器**出现了问题,你不得不从许多专业网站里找一个发帖询问。好心回复你的人让你粘贴上来你的**/etc/apache2/sites-available/default-ssl**文件内容。假如你能移除掉所有的注释行,那么对你,对帮你的人,以及所有阅读该文件的人,不是更容易发现问题吗?你当然可以很容易的做到!只需这样做就可以了:
|
||||
|
||||
$ sudo grep -v "#" /etc/apache2/sites-available/default-ssl
|
||||
|
||||
选项**-v**是告诉**grep**命令反转它的输出结果,意思就是不输出匹配的项,做相反的事,打印出所有不匹配的项。这个例子中,有**#**的是注释行。
|
||||
选项**-v**是告诉**grep**命令反转它的输出结果,意思就是不输出匹配的项,做相反的事,打印出所有不匹配的项。这个例子中,有**#**的是注释行(译注:其实这个命令并不准确,包含“#”的行不全是注释行。关于如何精确匹配注释行,可以了解更多的关于正则表达式的内容。)。
|
||||
|
||||
###3.找出所有的mp3文件
|
||||
|
||||
@ -50,21 +48,23 @@ grep还可以在一个或多个文件夹里用于搜索和过滤。让我们来
|
||||
|
||||
###4.在搜索字符串前面或者后面显示行号
|
||||
|
||||
另外两个选项是-A和-B之间的切换,是用以显示匹配的行以及行号,分别控制在字符串前或字符串后显示。Man页给出了更加详细的解释,我发现一个记忆的小窍门:-A=after、-B=before。
|
||||
另外两个选项是-A和-B之间的切换,是用以显示匹配的行以及行号,分别控制在字符串前或字符串后显示的行数。Man页给出了更加详细的解释,我发现一个记忆的小窍门:-A=after、-B=before。
|
||||
|
||||
$ sudo ifconfig | grep -A 4 etho
|
||||
$ sudo ifconfig | grep -B 2 UP
|
||||
|
||||
###5.在匹配字符串周围打印出行号
|
||||
grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是在匹配字符串的前面或后面而是而是按照顺序打印出匹配的行:
|
||||
|
||||
grep命令的**-C**选项和例4中的很相似,不过打印的并不是在匹配字符串的前面或后面的行,而是打印出两个方向都匹配的行(译注:同上面的记忆窍门一样:-C=center,以此为中心):
|
||||
$ sudo ifconfig | grep -C 2 lo
|
||||
|
||||
###6.计算匹配项的数目
|
||||
|
||||
这个功能类似于将**grep**输出的结果用管道传送给计数器(**wc**程序),grep内建的选项可以达到同样的目的:
|
||||
|
||||
$ sudo ifconfig | grep -c inet6
|
||||
|
||||
###7.通过给定字符串搜索文件
|
||||
###7.按给定字符串搜索文件中匹配的行号
|
||||
|
||||
当你在编译出错时需要调试时,**grep**命令的**-n**选项是个非常有用的功能。它能告诉你所搜索的内容在文件的哪一行:
|
||||
|
||||
@ -72,12 +72,12 @@ grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是
|
||||
|
||||
###8.在所有目录里递归的搜索
|
||||
|
||||
假若你要在当前文件夹里搜索一个东西,而当前文件夹里又有很多子目录,你可以指定一个**-r**选项以便于递归的搜索:
|
||||
假若你要在当前文件夹里搜索一个字符串,而当前文件夹里又有很多子目录,你可以指定一个**-r**选项以便于递归的搜索:
|
||||
$ sudo grep -r "function" *
|
||||
|
||||
###9.进行完全匹配搜索
|
||||
###9.进行精确匹配搜索
|
||||
|
||||
传递**-w**选项给grep命令可以在字符串中进行完全匹配搜索。例如,向下面这样输入:
|
||||
传递**-w**选项给grep命令可以在字符串中进行精确匹配搜索(译注:包含要搜索的单词,而不是通配)。例如,像下面这样输入:
|
||||
|
||||
$ sudo ifconfig | grep -w “RUNNING”
|
||||
|
||||
@ -89,30 +89,29 @@ grep命令的**-C**选项和例4中的很相似,不过打印的行号并不是
|
||||
|
||||
###10.在Gzip压缩文件中搜索
|
||||
|
||||
我们还要关注一下grep的衍生应用。第一个是**zgrep**,这个与**zcat**很相似,可以用于在**gzip**压缩过的文件中进行搜索。它有与**grep**相似的命令,使用方式也一样:
|
||||
我们还要关注一下grep的衍生应用。第一个是**zgrep**,这个与**zcat**很相似,可以用于**gzip**压缩过的文件。它有与**grep**相似的命令选项,使用方式也一样:
|
||||
|
||||
$ sudo zgrep -i error /var/log/syslog.2.gz
|
||||
|
||||
###11.在文件中匹配正则表达式
|
||||
|
||||
**egrep**是另一个衍生应用,代表着“**扩展全局正则表达式**”。它可以识别更多的正则表达式元字符,例如**at + ?** | 和**()**。在搜索源代码文件时,egrep是一个非常有用的工具,还有其他的一些零碎代码文件的搜索需要,使得这样的搜索能力成为必需。也可以grep命令中指定选项**-E**来获得加强正则表达式搜索的能力。
|
||||
**egrep**是另一个衍生应用,代表着“**扩展全局正则表达式**”。它可以识别更多的正则表达式元字符,例如**at + ?** | 和**()**。在搜索源代码文件时,egrep是一个非常有用的工具,还有其他的一些零碎代码文件的搜索需要,使得这样的搜索能力成为必需。可以在grep命令中使用选项**-E**来启用它。
|
||||
|
||||
$ sudo grep -E
|
||||
|
||||
###12.搜索一个固定匹配字符串
|
||||
|
||||
**fgrep**用以在一个文件或文件列表中搜索固定匹配的字符串。功能与**grep -F**同。**fgrep**的一个通常用法为传递一个含有匹配字符串的文件给它:
|
||||
**fgrep**用于在一个文件或文件列表中搜索固定样式的字符串。功能与**grep -F**同。**fgrep**的一个通常用法为传递一个含有样式的文件给它:
|
||||
|
||||
$ sudo fgrep -f file_full_of_patterns.txt file_to_search.txt
|
||||
|
||||
这仅仅是**grep**命令的开始,但是你可能已经注意到,它对于实现各种各样的目的简直是太有用了。除了这种我们实施的只有一行的命令,**grep**还可以写成**cron**任务或者自动的**shell脚本**去执行。保持好奇心,试验一下**man页**的各个选项,为实现你的目的写出一些**grep表达式**。
|
||||
这仅仅是**grep**命令的开始,你可能已经注意到,它对于实现各种各样的需求简直是太有用了。除了这种我们运行的这种只有一行的命令,**grep**还可以写成**cron**任务或者自动的**shell脚本**去执行。保持好奇心,试验一下**man页**的各个选项,为实现你的目的写出一些**grep表达式**吧。
|
||||
|
||||
---
|
||||
|
||||
|
||||
via: http://www.tecmint.com/12-practical-examples-of-linux-grep-command/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[jasminepeng](https://github.com/jasminepeng)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,14 +1,14 @@
|
||||
思科宣布新的开源H.264编解码器
|
||||
思科发布新的开源H.264编解码器
|
||||
================================================================================
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2012/04/youtube.jpg)
|
||||
|
||||
*YouTube是众多使用H.264的网站之一*
|
||||
|
||||
**美国网络设备公司思科[宣布计划提供一个开源的H.264编解码器](1) - 也就是在WebRTC中播放电影就再也没有问题了。**
|
||||
**美国网络设备公司思科[宣布它计划提供一个开源的H.264编解码器](1) - 也就是说以后在WebRTC中播放电影就再不会有问题了。**
|
||||
|
||||
尽管H.264广泛应用于HTML5视频流中,但是不是所有的浏览器和操作系统都可以利用H.264。
|
||||
|
||||
|
||||
这是因为使用可以编码与解码H.264视频的编解码器需要向持有相关专利的MPEG LA组织支付高昂的使用费(也许不是巧合,[一些专利为思科所拥有](2))。
|
||||
|
||||
此外,用于H.264的编解码器禁止随同像网页浏览器这样的开源软件一同分发。
|
||||
@ -19,17 +19,17 @@
|
||||
|
||||
这家公司谈到,通过开源他们的H.264编解码器和为他们预编译的二进制文件提供免费下载,这将给像WebRTC这样的允许浏览器间实时通信的HTML5 API提供强大动力。
|
||||
|
||||
>‘思科并不是第一个去创建H.264开源实现的。。。’
|
||||
>‘思科并不是第一个去创建H.264开源实现的...’
|
||||
|
||||
实际上,Mozilla[已经宣布](3)它计划在Firefox中支持思科的H.264二进制模块。
|
||||
|
||||
思科并不是第一个去创建H.264的开源实现的。GNU的libavcodec库已经包括了解码器和编码器,后者基于[x264](4)。但是思科提供的开源实现实有法律立足点的 - 而这正是其它的开源实现所缺乏的。这使得思科的解码器对象Mozilla这样的公司来说就非常有用咯,这可以使得它们无需担心法律问题。
|
||||
思科并不是第一个去创建H.264的开源实现的。GNU的libavcodec库已经包括了解码器和编码器,后者基于[x264](4)。但是思科提供的开源实现是有法律支持的 - 而这正是其它的开源实现所缺乏的。这使得思科的解码器对象Mozilla这样的公司来说就非常有用,这可以使得它们无需担心法律问题。
|
||||
|
||||
然而,思科公司为何提供这样一个新编解码器的真相还不很清楚。
|
||||
然而,思科公司为何提供这样一个新编解码器的原因还不很清楚。
|
||||
|
||||
思科将开源他们的H.264栈。这将随着预编译二进制模块一同可从他们的网站上免费下载。像Firefox这样的应用就可以在需要解码H.264视频的时候载入它(甚至可在需要的时候自动下载它)。
|
||||
|
||||
而于此同时,思科将要向MPEG LA组织支付专利费用,而这些费用也无法向使用它们模块的用户收取。对于直接由源代码进行编译的行为的限制也不清晰。尽管如此,随着代码下周在Github网站上进行托管,我们就可以获得更多信息。
|
||||
于此同时,思科将要向MPEG LA组织支付专利费用,而这些费用却无法向使用它们模块的用户收取。对于直接由源代码进行编译的行为的限制也不清晰。尽管如此,随着代码在Github网站上进行托管,我们就可以获得更多信息。
|
||||
|
||||
###总结###
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/10/cisco-announce-open-source-h-264-codec
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,6 +1,7 @@
|
||||
Linux系统上用encfs创建和管理加密文件夹
|
||||
================================================================================
|
||||
如果你想使你计算机上的某些信息免于被窥视的话,这儿正是所到之地。保护信息的一种方法就是加密你的home目录,但是一旦你登陆系统后,你的home目录下的信息将暴露于外。过去,我已经写过关于怎样[在你的系统上使用Cryptkeeper来创建加密的文件夹][1]。Cryptkeeper是一个图形前端,后端是**encfs**。encfs允许你创建一个加密的文件夹,然后把它当作使用[FUSE][2]来实现的用户文件系统来挂载。在这篇教程里,我会教你怎么在Linux系统上的命令行下面使用encfs工具来创建和管理一个加密的文件夹。
|
||||
|
||||
如果你想使你计算机上的某些信息免于被窥视的话,可以看看这篇文字。保护信息的一种方法就是加密你的home目录,但是一旦你登录系统后,你的home目录下的信息将暴露于外。过去,我已经写过关于怎样[在你的系统上使用Cryptkeeper来创建加密的文件夹][1]。Cryptkeeper是一个图形前端,后端是 **encfs**。encfs允许你创建一个加密的文件夹,然后通过[FUSE][2]来挂载作为用户文件系统。在这篇教程里,我会教你怎么在Linux系统上的命令行下面使用encfs工具来创建和管理一个加密的文件夹。
|
||||
|
||||
![](http://tuxtweaks.com/wp-content/uploads/2013/10/encfs.png)
|
||||
|
||||
@ -12,11 +13,11 @@ Linux系统上用encfs创建和管理加密文件夹
|
||||
|
||||
### 用encfs创建加密文件夹 ###
|
||||
|
||||
一旦在系统中安装好了encfs后,你就能在home目录下创建一个加密的文件夹。在这个示例当中,我将会创建一个叫做tuxtweaks的加密文件夹,这通过终端窗口就可以实现。当创建一个新的文件夹的时候,你需要指定全路径名,当然也可以使用如下所示的标准快捷方式。
|
||||
一旦在系统中安装好了encfs后,你就能在你的home目录下创建一个加密的文件夹。在这个示例当中,我将会创建一个叫做tuxtweaks的加密文件夹,这通过终端窗口就可以完成。当创建一个新的文件夹的时候,你需要指定全路径名,当然也可以使用如下所示的标准快捷方式。
|
||||
|
||||
encfs ~/.tuxtweaks ~/tuxtweaks
|
||||
|
||||
这会创建两个文件夹。第一个.**tuxtweaks**,它包含被加密的信息;第二个tuxtweaks,当你想要访问信息的时候,解密的版本信息将会挂载到下面。如果这些文件夹都不存在,系统将会提示询问是否创建它们。在提示下面键入‘**y**’以允许创建文件夹,然后你应该能看到如下所示的一些信息:
|
||||
这会创建两个文件夹。第一个.**tuxtweaks**,它包含被加密的信息;第二个tuxtweaks,当你想要访问信息的时候,解密的版本信息将会挂载到下面。如果这些文件夹都不存在,系统将会提示询问是否创建它们。在提示下面键入‘**y**’以允许创建文件夹,然后你应该能看到如下所示的一些信息:
|
||||
|
||||
Creating new encrypted volume.
|
||||
Please choose from one of the following options:
|
||||
@ -26,7 +27,7 @@ Linux系统上用encfs创建和管理加密文件夹
|
||||
|
||||
如果你想要最高级别的加密文件夹的话,在提示符下输入**p**选项。否则只需敲击**[Enter]键**,就会以标准选项来创建新的加密文件夹。
|
||||
|
||||
之后,你将会看到新加密卷的参数列表及一些警告信息,随之提示符会让输入一个密码。确保不要忘记使用的密码,回为没有密码找回机制。在输入密码能以第二次输入校验通过后,新的文件夹会被创建出来,并自动挂载进文件系统,就可以开始使用了。
|
||||
之后,你将会看到新加密卷的参数列表及一些警告信息,随之提示符会让输入一个密码。确保不要忘记使用的密码,因为没有密码找回机制。在输入密码并以第二次输入校验通过后,新的文件夹会被创建成功,并自动挂载进文件系统,可以开始使用了。
|
||||
|
||||
### 使用加密文件夹 ###
|
||||
|
||||
@ -38,11 +39,11 @@ Linux系统上用encfs创建和管理加密文件夹
|
||||
|
||||
### 卸载encfs创建的加密文件夹 ###
|
||||
|
||||
一旦你完成文件访问或者数据创建等操作,最好把加密文件夹卸载,以便里面的信息安全的隐藏掉。encfs自身不带有卸载的命令,一旦用它创建了用户文件系统,就可以利用FUSE包来处理卸载任务。下面我们会使用fusermount命令来卸载我们的加密文件夹。
|
||||
一旦你完成文件访问或者数据创建等操作,最好把加密文件夹卸载,以便里面的信息安全的隐藏掉。encfs自身不带有卸载的命令,一旦用它创建了用户文件系统,就可以利用FUSE来处理卸载任务。下面我们会使用fusermount命令来卸载我们的加密文件夹。
|
||||
|
||||
fusermount -u ~/tuxtweaks
|
||||
|
||||
切换到home目录下,会看到tuxtweaks目录仍然存在,但进入文件夹,你会发现里面是空的。
|
||||
切换到home目录下,会看到tuxtweaks目录仍然存在,但进入文件夹,你会发现里面是空的。(译注:因为tuxtweaks目录只是一个挂载点,真实的数据是以加密的方式存储在.tuxtweaks目录下的,)
|
||||
|
||||
### 挂载用encfs创建的加密文件夹 ###
|
||||
|
||||
@ -50,8 +51,8 @@ Linux系统上用encfs创建和管理加密文件夹
|
||||
|
||||
encfs ~/.tuxtweaks ~/tuxtweaks
|
||||
|
||||
### 使用 ###
|
||||
|
||||
### 用途 ###
|
||||
|
||||
我发现使用**encfs**加密文件夹来安全地存储财务信息非常便捷,比如纳税申报表以及用于存储日志列表凭据。这样我只需要记住我加密文件夹的密码,然后就可以进入访问记录有其他登录ID和密码的名单文件。
|
||||
|
||||
你会使用encfs来做什么呢?在评论中给我们分享吧。
|
||||
@ -60,7 +61,7 @@ Linux系统上用encfs创建和管理加密文件夹
|
||||
|
||||
via: http://tuxtweaks.com/2013/10/encrypted-folders-linux-encfs/
|
||||
|
||||
译者:[runningwater](https://github.com/runningwater) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[runningwater](https://github.com/runningwater) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -0,0 +1,36 @@
|
||||
每日Ubuntu小技巧 - 改变Ubuntu Unity启动器尺寸
|
||||
================================================================================
|
||||
这里有一些给新Ubuntu用户的小技巧。这一系列的小技巧是为了帮助Ubuntu新用户轻松地配置和管理他们的电脑。这不是面向专家用户的,只是为了那些刚刚开始使用Ubuntu的用户。
|
||||
|
||||
Ubuntu启动器是Ubuntu Unity桌面的关键部分。启动器是一个布满图标的垂直条,当你登陆的时候,它就会位于屏幕的左边栏。通过它您可以从桌面方便地打开或者启动程序,还可以让您快速访问应用、工作空间、可移动设备和垃圾桶。
|
||||
|
||||
默认情况下,这个启动器图标大小被设置为48X48px,即使是较小的屏幕上也如此。如果你需要调大或调小启动器的尺寸,那么请继续接下来的学习。
|
||||
|
||||
想调整Unity启动器尺寸的原因有很多。其中一个就是为了适应更小的屏幕。如果你的屏幕很小,默认尺寸不合适,那么你就需要改变它了。
|
||||
|
||||
如果图标默认尺寸太小,想要增大它,则可以调整启动器来增大图标,从而容易点击。
|
||||
|
||||
下面开始调整大小,点击右上角的齿轮按钮弹出菜单条,点击系统设置(System Settings...),如下图。
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/09/ubuntulockscreendisable3.png)
|
||||
|
||||
接下来,选择 外观(Appearance)
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/09/unitylauncherubuntu.png)
|
||||
|
||||
最后,使用滚动条来调整(增大\减小)启动器的图标尺寸。
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/09/unitylauncherubuntu1.png)
|
||||
|
||||
这个改变会被自动应用。记住,如果你想要继续作用默认尺寸,移动到48.
|
||||
|
||||
这是另一个为Ubuntu新用户的小技巧。欢迎回来掌握更多的Ubuntu小技巧。如果你是一个老手并且想要做出贡献,就请在下面留言吧。
|
||||
|
||||
享受吧!
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tips-resize-ubuntu-unity-launcher/
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
译者:[Vic___](http://blog.csdn.net/vic___) 校对:[jasminepeng](https://github.com/jasminepeng)
|
@ -1,9 +1,9 @@
|
||||
每日Ubuntu小技巧——Ubuntu中通过Cheese支持Webcom
|
||||
每日Ubuntu小技巧——Ubuntu中通过Cheese支持Webcam
|
||||
================================================================================
|
||||
|
||||
对于一些Ubuntu的新用户,如果你们想在Ubuntu中使用webcam的话,这里有一些信息能够帮助到你们。正如你们说知道的那样,Ubuntu旨在支持绝大多数webcom,而且是现成可用的。大多数webcom生产商并不为Linux系统提供驱动,包括Ununtu。所以,Linux开发者们必须能够尽最大努力让webcom设备在Linux内核中运行。
|
||||
对于一些Ubuntu的新用户,如果你们想在Ubuntu中使用webcam的话,这里有一些信息能够帮助到你们。正如你们说知道的那样,Ubuntu旨在支持绝大多数webcam,而且是现成可用的。大多数webcam生产商并不为Linux系统提供驱动,包括Ununtu。所以,Linux开发者们必须能够尽最大努力让webcam设备在Linux内核中运行。
|
||||
|
||||
支持Linux的webcam驱动由Linux UVC项目提供[UVC][1]。该项目意图为webam提供一个万能USB支持,就像一个通用USB驱动控制一些USB设备,例如U盘,外部USB设备和其他一些设备。
|
||||
支持Linux的webcam驱动由Linux UVC项目提供[UVC][1]。该项目意图为webcam提供一个万能USB支持,就像一个通用USB驱动控制一些USB设备,例如U盘,外部USB设备和其他一些设备。
|
||||
|
||||
大多数主流的USB webcam设备都可以在Linux系统下工作,其中包括支持Linux UVC项目驱动的Ubuntu。如果你想为你的Ubuntu计算机购买一个webcam设备,又不确信它是否能被支持,请[核查支持UVC的webcam列表][2].
|
||||
|
@ -0,0 +1,35 @@
|
||||
Ubuntu每日小技巧:通过PPA升级你的LibreOffice
|
||||
================================================================================
|
||||
对于每一个你新安装的Ubuntu系统,你都会拥有一个可以让你办公的办公工具——LibreOffice。很多人都知道微软公司的的Word、Excel、PowerPoint和Outlook,但是很少有人知道LibreOffice。
|
||||
|
||||
LibreOffice靠来自全世界的志愿者来维护,由一个慈善基金会支持。它是Linux社区的一款主要的免费办公工具。它可以安装在Windows,Mac OS X和Linux等系统的计算机上。
|
||||
|
||||
就在5天前(译注:好吧,这个翻译稿拖了5天了~~,原文为“今天”。),一个新的版本将面向公众开放了。Windows,Mac OS X和Linux用户可以直接从下载页面下载最新版本了。
|
||||
|
||||
Ubuntu用户拥有添加LibreOffice软件仓库到自己的电脑来安装升级最新版的优势。如果你想要在最新版本可用时最快的得到它,这种方法将会很有用。
|
||||
|
||||
最新的LibreOffice套装版本是4.1。每一个后续的版本可以立即在4.1的仓库中找到,直到新的主线版本比如4.2的推出。
|
||||
|
||||
所以,为了在Ubuntu中自动的升级,请添加下面的软件仓库地址。
|
||||
|
||||
sudo add-apt-repository ppa:libreoffice/ppa
|
||||
|
||||
接着,运行如下命令来升级最新的LibreOffice。
|
||||
|
||||
sudo apt-get update && sudo apt-get dist-upgrade
|
||||
|
||||
这样就好了。当你添加上面的仓库然后升级系统,Ubuntu将会自动的下载安装最新的LibreOffice版本。
|
||||
|
||||
Windows和Mac OS X用户可以直接在程序套件中升级或者直接从网页中下载。
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/11/libreoffice-upgrade-ubuntu.png)
|
||||
|
||||
Enjoy!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tipsupdate-to-libreoffice-latest-in-ubuntu-via-ppa/
|
||||
|
||||
译者:[SCUSJS](https://github.com/scusjs) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,65 @@
|
||||
如何使用安卓设备控制你的Linux PC
|
||||
================================================================================
|
||||
**下面的教程会指导所有的Linux用户如何在系统上安装SSH,以便通过安卓智能手机远程访问他们的电脑。**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004-2.jpg)
|
||||
如今我们所有人都拥有一台平板或触屏手机,我们经常使用它们在深夜里看电影或电视节目,听歌或者读一本好书。你可以把本文称作是“懒人教程”,它是专门为那些在大晚上因为太过疲惫而懒得去开启他们电脑上的某些应用程序,移动、删除,复制或重命名某些文件,甚至懒得去关掉PC的人准备的。
|
||||
|
||||
的确,已经有各种各样的远程桌面解决方案,但是许多方案费用很高,或者实现效果很糟糕,无法像预期一样运行,迫使你最终还是得去电脑上做你原本想做的事情。
|
||||
|
||||
在这个教程里面,我们将使用一种简单、安全、高效的协议,它被称为SSH (Secure Shell),很容易从默认的软件仓库中安装(在Arch linx中是openssh,在Ubuntu中是openssh-server)。
|
||||
|
||||
### 配置SSH服务器 ###
|
||||
|
||||
在安装完成后,你需要为SSH服务器进行基本配置。为此,你需要使用文本编辑器编辑/etc/ssh/sshd_config这个文件。
|
||||
|
||||
1.在文件尾部添加下面一行(下面的yourusername使用你的Linux机器上存在的用户名代替)
|
||||
|
||||
AllowUsers yourusername
|
||||
|
||||
2.取消"#PermitRootLogin"这行注释,把"no"替换成"yes"(译注:下面的选项修改和是否允许ssh登录无关,只是允许root直接登录,一般而言,并不建议如下这样的远程root直接登录。):
|
||||
|
||||
PermitRootLogin no
|
||||
|
||||
3.为了安全起见,你需要修改SSH 连接默认的22端口到一个更大编号的端口,譬如在我们的例子中是55441
|
||||
(但不要使用55441,这是我举个列子,可以找另一个四位或者五位数字)。因此,取消注释并编辑"#Port 22"如下(译注:你可以选择任何一个大于1024并小于65535的端口,只要他没有被别的程序占用,为什么不试试你的幸运数字呢?):
|
||||
|
||||
Port 55441
|
||||
|
||||
### 开启SSH服务器###
|
||||
|
||||
在Ubuntu上,SSH服务通过下面的命令启动:
|
||||
|
||||
sudo /etc/init.d/ssh start
|
||||
|
||||
当你每次修改上述配置文件时,都需要通过下面的命令重启:
|
||||
|
||||
sudo /etc/init.d/ssh restart
|
||||
|
||||
在Arch Linux上,你可以使用下面的命令启动SSH服务:
|
||||
|
||||
sudo systemctl start sshd
|
||||
|
||||
### 配置安卓设备上的SSH客户端###
|
||||
|
||||
JuiceSSH似乎是安卓上最好的SSH客户端之一,而且是免费的。同时,如果你认为它的功能比较简单,可以花费少量的钱来得到更多高级的特性,譬如亚马逊 AWS/EC2 集成,团队协作,以及更多其它的特性。
|
||||
|
||||
一旦软件安装完毕,开启它,然后你会要求输入一个加密的密码以保证连接的安全。这个密码由AES-256进行加密,因此除非你的设备被偷,否则没有人能够获取它们。
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_001.jpg)
|
||||
|
||||
现在,添加一个新连接,为你的电脑选择名称、IP地址,上面设定的端口号以及一个需要被创建的身份。
|
||||
|
||||
![](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)
|
||||
|
||||
这就是我的Arch Linux机器,这是通过我的安卓平板上的JuiceSSH客户端访问到的界面。如果在这个教程中你遇到问题,请在下面进行评论。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004.shtml
|
||||
|
||||
译者:[KayGuoWhu](https://github.com/KayGuoWhu) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
39
published/How to add icons to menus in Ubuntu 13.10.md
Normal file
39
published/How to add icons to menus in Ubuntu 13.10.md
Normal file
@ -0,0 +1,39 @@
|
||||
如何在Ubuntu 13.10中给菜单添加图标
|
||||
================================================================================
|
||||
|
||||
通常,使用Ubuntu 13.10的用户会会对默认的程序、偏好和功能进行优化,才能得到更好的用户体验。
|
||||
|
||||
Ubuntu的用户体验是可以优化调整的,因此用户可以通过一些工具来修改和调整那些默认设置,比如使用Ubuntu Tweak。
|
||||
|
||||
默认情况下,Ubuntu禁用了内部菜单的图标,即,右键点击桌面打开右键菜单时,菜单中只包含文本而且没有相应的图标。
|
||||
|
||||
不过,在Ubuntu 13.10的菜单中添加图标是很简单的:
|
||||
|
||||
- 安装Ubuntu Tweak
|
||||
|
||||
sudo add-apt-repository ppa:tualatrix/ppa
|
||||
|
||||
sudo apt-get update
|
||||
|
||||
sudo apt-get install ubuntu-tweak
|
||||
|
||||
- 启动Ubuntu Tweak,并导航到`Tweaks-->Miscellaneous`
|
||||
- 选中 `Menus have icons`
|
||||
|
||||
**结果**:现在右键点击桌面,图标就会在菜单中显示, 图标显示也会在其他软件的右键菜单出现(例如, Nautilus, Firefox, Gedit中的菜单等等)。
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/menu%20icon%203%20ubuntu%2013.10.png)
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/menu%20icons%20ubuntu%2013.10%201.png)
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/menu%20icons%20ubuntu%2013.10%202.png)
|
||||
|
||||
这样在最常用的右键菜单中加上新增的图标,菜单会更加清晰和美丽,特别是使用单色图标菜单显示图标时。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://iloveubuntu.net/how-add-icons-menus-ubuntu-1310
|
||||
|
||||
译者:[Yu-Fei](http://blog.csdn.net/u011459130) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,6 +1,4 @@
|
||||
|
||||
|
||||
如何使用LibreOffice把DOCX, DOC, RTF, ODT 转换成PDF
|
||||
如何使用LibreOffice把DOCX,DOC,RTF,ODT转换成PDF
|
||||
================================================================================
|
||||
在学校、公司、政府,或者是在网页传播的书籍、文档、报告、教程等等文档均被封装成各种格式。
|
||||
|
||||
@ -28,7 +26,7 @@
|
||||
|
||||
via: http://iloveubuntu.net/how-convert-docx-doc-rtf-odt-pdf-libreoffice
|
||||
|
||||
译者:[NearTan](https://github.com/NearTan) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[NearTan](https://github.com/NearTan) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
109
published/Install Ubuntu 13.10 Server Step by Step.md
Normal file
109
published/Install Ubuntu 13.10 Server Step by Step.md
Normal file
@ -0,0 +1,109 @@
|
||||
一步步安装Ubuntu 13.10服务版
|
||||
========================
|
||||
|
||||
如你所见,这是一篇关于**Ubuntu 13.10服务版的安装**的指南。
|
||||
|
||||
下载最新的版本**[Ubuntu 13.10 服务版][4]**,然后用刻录好的Ubuntu 13.10服务版光盘引导你的服务器,你将会看到类似下面的显示。
|
||||
|
||||
首先选择您的语言:(建议使用英文)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server1.png)
|
||||
|
||||
点击安装Ubuntu服务版:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server2.png)
|
||||
|
||||
选择安装过程中所使用的语言:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server3.png)
|
||||
|
||||
选择你的国家(译注:用于决定时区,请选择中国,使用+8时区):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server4.png)
|
||||
|
||||
配置区域设置:(译注:对于服务器版本,我们建议一律采用英文的locale—— en_US.UTF-8,当然,你可以增加中文字体包,但是保持服务器环境是英文环境,有助于减少出现奇怪问题的几率。)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server5.png)
|
||||
|
||||
检测键盘布局(译注:一般不必检测):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server6.png)
|
||||
|
||||
选择键盘布局(译注:如下图的英文即可):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server7.png)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server8.png)
|
||||
|
||||
自动检测网络设置:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server9.png)
|
||||
|
||||
输入你的服务器主机名(译注:作为服务器,尤其是运行在互联网上的,一般都输入包括域名在内的完全限定主机名。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server10.png)
|
||||
|
||||
输入用户名以创建一个非特权用户(译注:操作服务器要习惯使用普通用户操作,**仅仅**在必要使用使用sudo来使用root权限。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server11.png)
|
||||
|
||||
设置用户的密码:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server12.png)
|
||||
|
||||
如果你想加密用户主目录,选择Yes,否则选择No(译注:这点无所谓。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server13.png)
|
||||
|
||||
选择分区方案(译注:如果你有特定需求,可以采用manual分区方式,没有经验的用户可以使用预设的Guied分区模式。关于分区,是一个值得系统管理员仔细研究的课题,建议搜索更多深入的文章来看看,或者在此进行讨论):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server14.png)
|
||||
|
||||
开始安装:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server15.png)
|
||||
|
||||
如果在你的网络上有代理服务,输入代理服务的IP地址(译注:绝大多数的服务器都是直接接入互联网,并有公网IP的,所以不会使用代理服务器的。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server16.png)
|
||||
|
||||
选择安全更新的安装方式,然后回车(译注:我不同意原文的选择。对于服务器,不建议采用自动更新,因为服务器的第一要务是稳定;在出现必要的安全更新补丁时,系统管理员要评估并测试是否应该安装,是否会对现有应用造成影响,如果可以通过其他方式,如防火墙来消除安全隐患,那么一动不如一静,不安装任何补丁和更新为好。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server17.png)
|
||||
|
||||
选择要安装的软件(译注:仅仅选择你的服务器所必须的,暂时不用的,最好不要选择。将来需要增加或许修改时,你还有足够的时间去改变。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server18.png)
|
||||
|
||||
点击Yes安装Grub引导装载程序(译注:这里一般没有别的选择,肯定是安装Grub,除非你有特别的理由给服务器安装其他的引导器。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server20.png)
|
||||
|
||||
安装完成以后,选择continue重启服务器即可:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server21.png)
|
||||
|
||||
登入Ubuntu服务器:
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server22.png)
|
||||
|
||||
输入用户名和密码登录(译注:如你所见,服务器版默认是没有图形界面的,一般而言,除非你有一个必须图形界面运行的程序,否则不要安装图形界面。不安装图形界面的主要原因是,减少不必要的包和服务,每多一个服务就会多带来一份安全威胁的可能性,当然,也会消耗一点内存和处理能力。你现在可以在登录后输入ps或者pstree看看已经运行的服务有多少。):
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server23.png)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server24.png)
|
||||
|
||||
这就是这次的指南。现在你的Ubuntu 13.10 服务版已经启动运行了。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/install-ubuntu-server-13-10-step-step/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[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/
|
@ -1,6 +1,7 @@
|
||||
在Ubuntu下用Python搭建桌面算法交易研究环境
|
||||
================================================================================
|
||||
这篇文章将讨论在ubuntu下,使用Python编程语言,来搭建一个强大,高效和易交互的算法交易策略研究环境.几乎所有的后续的算法交易文章都将利用此环境.
|
||||
====================================
|
||||
|
||||
这篇文章将讨论在ubuntu下,使用Python编程语言来搭建一个强大、高效和易交互的算法交易策略研究环境。我们后继的算法交易文章都将利用此环境。
|
||||
|
||||
搭建此环境需要安装以下软件,它们都是开源且免费下载的:
|
||||
|
||||
@ -15,11 +16,11 @@
|
||||
|
||||
这些工具(配合合适的 [证券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研究环境包”这一节。
|
||||
请注意,我写这篇教程是为了那些无法或不愿意直接安装ubuntu系统的windows或Mac OSX用户,通过VirtualBox来搭建此环境。VirtualBox使我们可在主控操作系统中创建一个虚拟机,可模拟guest操作系统,而丝毫不影响主控操作系统。由此我们可以在完整安装Ubuntu前练习Ubuntu和Python工具。如果已经安装Ubuntu桌面系统,可直接跳到“在Ubuntu下安装Python研究环境包”这一节。
|
||||
|
||||
##安装VirtualBoX和Ubuntu Linux##
|
||||
|
||||
Mac OSX操作系统上关于VirtualBox安装的部分已经写过了,这里将简单的移到Windows环境中。一旦各种host操作系统下的VirtualBox安装完毕,其它过程就都一样了。
|
||||
Mac OSX操作系统上关于VirtualBox安装的部分已经写过了,这里将简单的移到Windows环境中。一旦各种主控操作系统下的VirtualBox安装完毕,其它过程就都一样了。
|
||||
|
||||
开始安装前,我们需要先下载Ubuntu和VirtualBox。
|
||||
|
||||
@ -158,7 +159,7 @@ Mac OSX操作系统上关于VirtualBox安装的部分已经写过了,这里将
|
||||
|
||||
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])上查看是否有其他的命令。
|
||||
为了解决这个问题,再次运行"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开发包和编译器开始安装,编译器将在编译所有软件的时候用到:
|
||||
|
@ -0,0 +1,35 @@
|
||||
Fedora 20:新的网络配置功能、支持 ARM 设备
|
||||
================================================================================
|
||||
为了修复一些 bug 从而增强系统稳定性,在连着跳票几周后,最新的 [Fedora Linux][1] 终于要在12月份出来了。Fedora 是一款为 [RHEL][2] 做软件测试用的开源操作系统(即 Red Hat 公司会将那些在 Fedora 系统运行稳定的软件版本吸收到 RHEL 系统中 —— 译者注),这次更新将会带来什么样的变化呢?让我们来看一下。
|
||||
|
||||
![](http://thevarguy.com/site-files/thevarguy.com/files/imagecache/medium_img/uploads/2013/11/grayscale.jpg)
|
||||
|
||||
早在10月末,Fedora 项目就宣布 Fedora 20 正式版要延迟一周发布(Fedora 项目计划在每年的4月和10月发布新的版本,但几乎每次都在跳票,所以见怪不怪了 —— 译者的吐槽)。在11月1号,Fedora 项目又宣布将 Fedora 20 推迟一周。而[现在的计划][3]再次变成11月12日发布 Beta 版,12月17日发布正式版。
|
||||
|
||||
这个三连跳不禁又要让 Fedora 用户伤心一阵子了,但开发者说不断的修改发布计划,是为了让 Fedora 以更完美的姿态出现在大众眼前。(Fedora 这种追求完美的策略,与 [Canonical][4] 旗下的 [Ubuntu][5] 追求效率的策略形成鲜明的对比。Ubuntu 更愿意按计划发布新版本,这有助于它抢占 Linux 市场。)
|
||||
|
||||
抛下进度不提,Fedora 用户还是可以对这次最新最棒的版本更新抱有很大期望的。比如为了将桌面轻量化,Fedora 20 不再默认安装一些软件,像 syslog 和 sendmail。
|
||||
|
||||
NetworkManager 增加了一些很有用的功能,比如支持网桥和网卡绑定,在以前,要实现这两个酷酷的功能,需要通过复杂的命令行操作。在布署复杂的网络环境,特别是在云计算和软件定义网络(SDN)中,现在的 Fedora 对用户来说更有吸引力了。
|
||||
|
||||
Fedora 20 的目标是完全支持 ARM 设备(特别是 ARM7hl),这个目标能让它在移动终端和一些新兴硬件产品占有一席之地。
|
||||
|
||||
这些改进能让 Fedora 20 成为本季度最引人注目的 Linux 桌面发行版 —— 特别是在上月发布的 Unbuntu 13.10 的衬托下。Ubuntu 13.10 为桌面用户带来[极少的更新][6]。(它更多的是针对[服务器和云的更新][7]。)
|
||||
|
||||
由于 Red Hat 公司会从 Fedora 中挑选稳定可靠的软件版本并吸收到 RHEL 中,所以 Fedora 社区里会有很多高端用户。而对于社区中的这些用户来说,本次更新也是有重要意义的。他们应该在12月(如果不再跳票)就可以拿到 Fedora 20 正式版了,并且会期待着 Red Hat 公司什么时候能将这些新特性加入到 RHEL 中。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://thevarguy.com/open-source-application-software-companies/red-hat-fedora-20-linux-new-networking-arm-features
|
||||
|
||||
译者:[bazz2](https://github.com/bazz2) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://fedoraproject.org/
|
||||
[2]:http://redhat.com/
|
||||
[3]:http://fedoraproject.org/wiki/Releases/20/Schedule
|
||||
[4]:http://canonical.com/
|
||||
[5]:http://ubuntu.com/
|
||||
[6]:http://thevarguy.com/ubuntu/canonicals-ubuntu-linux-1310-brings-few-changes-desktop
|
||||
[7]:http://thevarguy.com/ubuntu/ubuntu-1310-openstack-havana-support-cloud-server-updates
|
@ -2,8 +2,6 @@ Linux内核4.0就要来了!准备对3.x说再见吧!
|
||||
================================================================================
|
||||
**Linux Torvalds目前正在考虑尽快更换内核的版本号到4.0,新版本将主要专注于bug修复**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/Say-Hello-to-Linux-Kernel-4-0-and-Say-Goodbye-to-3-x-396734-2.jpg)
|
||||
|
||||
据Linux内核开发维护人员介绍,不远的将来,为了便于管理,Linux的内核版本号将从3.x跳到4.x。Linus Torvalds表示会尽快将其付诸实施。
|
||||
|
||||
他在Linux内核3.12的[声明][1]中说道:“我不希望我们再有类似2.x那样令人发狂的版本号经历,因此很快某个时候,我们将直接从3.x跳到4.x,这样版本号更短,更便于记忆。虽然目前暂时还未实现,但是我会尽快,可能最多一年左右吧,到时也许是3.19什么的,之后,就会是4.0。”
|
||||
@ -20,7 +18,7 @@ Linus说,“之所以我提到‘4.0’,是因为如果我们用几乎一年
|
||||
|
||||
via: http://news.softpedia.com/news/Say-Hello-to-Linux-Kernel-4-0-and-Say-Goodbye-to-3-x-396734.shtml
|
||||
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -0,0 +1,57 @@
|
||||
闭源优于开源的七个缘由?是这样吗?
|
||||
================================================================================
|
||||
![](http://opensource.com/sites/default/files/imagecache/image-full-size/images/business/BUSINESS_asusual_deadend.png)
|
||||
|
||||
这看起来似乎挺奇怪的,因为这样的观点来竟然自于OpenLogic的创办人,而该公司专注于在开源领域提供帮助。 但是事实上,闭源在某些情况下优于开源。
|
||||
|
||||
针对闭源……
|
||||
|
||||
###1. 出了问题,不用自己搞定
|
||||
|
||||
只要是软件,难保不出问题。要是开源软件出了这事儿,要么你自己,要么某个欠你人情债的工程师,总得有个人要花费时间排除bug。通览代码,求助于开源社区或者开源软件的供应商,通过这些手段来解决问题。
|
||||
|
||||
但是闭源呢,一旦你确定开发商代码出了问题,ok,你的工作到此为止! 你只需发个文件,等着就行了。当然,可能会等上几个月或者几年,问题才能得到解决,更甚者永远得不到答复。但是除此之外,你还能做什么呢。 把问题踢回去,放松,期待最好的解决方案,仅此而已。
|
||||
|
||||
###2. 不必担心贡献回流到社区
|
||||
|
||||
如果用的是开源软件, 很有可能, 你解决了一个bug或者做出了改善,之后你的代码就会进入到社区,随着时间的推移从而帮助测试或者维护。
|
||||
|
||||
闭源就不同了,你根本用不着给任何人做任何事情。当然,那是因为你接触不到代码,所以也修改不了,但是你可以针对遇到的问题创建自己的解决方案。你可以一直只针对同一个问题,改善再改善,一个版本接着一个版本,至少用不着跟社区打交道,为其他人提供更好的解决方法。
|
||||
|
||||
###3. 你不必考虑开源许可条款及规定事宜
|
||||
|
||||
对于开源,你必须遵循所使用的组件的许可条款。例如,想要搞明白Apache软件许可证和GPL之间的区别与联系,是需要花费一定的时间的。使用哪一种许可证取决于你所用的开源组件以及你如何使用这些组件(发布给第三方或者内部使用),据此都有不同的许可证可供应用(可附加到文档中进行说明)。
|
||||
|
||||
像OpenLogic这样的公司可以很容易地理解并遵守开源许可,但是针对闭源,你大可不必担心这类事情!你的供应商的许可协议把有关软件的所有的权利都收走了,如果没有你的公司的律师明确同意的情况下,你几乎是不可能的想以别的方式使用这些软件,想都不要想。当然,你还得考虑许可证数量、突如其来的软件合规性审计、随着时间的推移而恶化的条款、几乎难以理解的法律术语,但至少你不必了解如何使用开源组件。
|
||||
|
||||
###4. 你用不着为每个组件在众多选项中进行选择
|
||||
|
||||
针对数据库,Web服务器,应用服务器,编程语言,图形用户界面框架,类似的方面等等,开源都提供了大量的解决方案。在每一个特定的领域,你都可以找到运用不同的架构方法,使用各种语言构建的健壮的成品。找一款功能相似的工具很容易,这些工具都针对不同的使用场合进行了优化(性能、可扩展性、简洁之间的比较)。为了确信一个工具软件在既定场合下功能够满足需求,可以下载下来,试用一下。
|
||||
|
||||
使用闭源软件的话,你就用不着对付那么多的选择。你只需要在每个领域探索两三个大厂商提供的产品。如果供应商没有提供免费试用版本,或者很难说服你为试用品买单,甚至根本不和你签署试用协议,那你就节省时间了。
|
||||
|
||||
###5. 你不必四处找幻灯片
|
||||
|
||||
如果打算找一些软件的会议简报,架构图表,截图,以及其他相关的文档,这需要花费一定的时间。使用开源软件,你得读百科,访问论坛,还有邮件列表,才能获取到你需要的相关组件的信息。
|
||||
|
||||
使用闭源软件,一通电话就足够了,只需坐在自己舒适的办公室,会有西装革履的专业人士把PowerPoint演示文稿寄送到你的面前。当然,在你提供自己的联系方式之前,销售人员是不会给你打电话的。这样看来,至少自己没必要在网上搜索带有漂亮的图形的PPT。
|
||||
|
||||
###6. 你无需到处寻求技术支持
|
||||
|
||||
你可以得到来自开源社区,自己的工程师,或专业开源组织的帮助。这可能需要一些时间,以决定是否要服务等级协议(SLA)的支持,以便于在保证的时间内得到答复,就像从OpenLogic那里获得帮助一样,或者如果你可以自由的发问题到邮件列表,自己解决。
|
||||
|
||||
闭源就不同了,你根本不需要担忧从哪获得帮助。而且,你可能根本用不着和工程师当面交谈,只需要知道给谁打电话就OK了。
|
||||
|
||||
###7. 认输就行了
|
||||
|
||||
开源软件,总会有办法解决问题,打补丁,改善,强化,重构,升级,或者重写。没可能跟闭源那样,甩手走开。当然,你可以谩骂开发出这个导致问题的软件的社区,但是你仍然可以解决问题,从社区或者组织那里获得帮助,或者自己动手解决。 而对于商业供应商,那就远不能满足于骂一顿和花费一天的时间来找他们。
|
||||
|
||||
嗯,你都了解了。为甚么闭源优于开源的几条缘由。你还有要补充的吗?
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://opensource.com/business/13/10/seven-reasons-closed-better-than-open-source
|
||||
|
||||
译者:[l3b2w1](https://github.com/l3b2w1) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,10 +1,10 @@
|
||||
系统信息工具I-Nex 0.5.4发布
|
||||
================================================================================
|
||||
[I-Nex][1] 是一个免费开源的系统信息工具,收集,分类并且在一个干净清晰的界面显示关于计算机相关信息。
|
||||
[I-Nex][1] 是一个免费开源的系统信息工具,它收集、分类并在一个干净清晰的界面显示关于计算机相关信息。
|
||||
|
||||
从本质上说,I-Nex显示一个非常详细的系统组件信息,包括驱动,内核,RAM,网络,USB,CPU,GPU,主板,音频,允许用户很容易的掌握自己的计算机和操作系统信息。
|
||||
|
||||
启动I-Nex,它的主窗口和几个选项卡(tab)会出现,点击一个选项卡,窗口上就会显示相关信息,点击另一个选项卡,主视图会更具详情重新显示;例如,点击 `CPU` 选项卡了,显示关于CPU的名称,频率,系列,模式,扩展,高速缓存,等等,基本上,它就是一个方便的信息捆绑。
|
||||
启动I-Nex,它的主窗口和几个选项卡会出现,可以通过选项卡切换显示不同的信息;例如,点击 `CPU` 选项卡了,显示关于CPU的名称,频率,系列,模式,扩展,高速缓存,等等,基本上,它就是一个方便的信息汇总。
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/i-nex%20054%20cpu.png)
|
||||
|
||||
@ -14,11 +14,10 @@ I-Nex 已经更新至 **0.5.4** ,在原本的基础上增加了新的功能,
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/i-nex%20054%20gpu.png)
|
||||
|
||||
此外,0.5.4版本有多个修复,进一步朝着有用的能用的系统信息应用程序工具发展,自己作为一个Ubuntu替代全球使用的专有系统信息应用程序。
|
||||
此外,0.5.4版本有多个修复,进一步朝着更稳定更强大的系统信息应用程序工具发展,它已经在Ubuntu上替代其他广泛使用的系统信息应用。
|
||||
|
||||
我们怎么 **安装** I-Nex 0.5.4呢?
|
||||
|
||||
Add the following **official** PPA (Ubuntu 10.04, Ubuntu 12.04, Ubuntu 12.10, Ubuntu 13.04, Ubuntu 13.10)
|
||||
增加 **official** PPA (Ubuntu 10.04, Ubuntu 12.04, Ubuntu 12.10, Ubuntu 13.04, Ubuntu 13.10)
|
||||
|
||||
|
||||
@ -30,7 +29,7 @@ Add the following **official** PPA (Ubuntu 10.04, Ubuntu 12.04, Ubuntu 12.10, Ub
|
||||
|
||||
via: http://iloveubuntu.net/system-information-tool-i-nex-054-released-improvements
|
||||
|
||||
译者:[flsf](https://github.com/flsf) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[flsf](https://github.com/flsf) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -2,7 +2,7 @@
|
||||
================================================================================
|
||||
> 自从微软的反Linux、反开源战略备忘录泄露以来,已经整整过去了15个年头。让我们来回顾一下,这一战略是如何失败的。
|
||||
|
||||
![](http://thevarguy.com/site-files/thevarguy.com/files/imagecache/medium_img/uploads/2013/10/trickortreat2.jpg)
|
||||
![](http://thevarguy.com/site-files/thevarguy.com/files/imagecache/medium_img/uploads/2013/10/trickortreat2.jpg)
|
||||
|
||||
15年前,当时临近万圣节,Eric S. Raymond发布了第一份“[万圣节档案(Halloween Documents)][1]”,文档揭露了微软专门针对Linux与开源的秘密战略。那时,“恐惧、未知与怀疑(fear, uncertainty and doubt - FUD)”这样的词汇第一次被收入辞典,到了今天,很多情况已经改变,而未曾改变的又有哪些?微软和开源世界今天能够和睦相处了吗?
|
||||
|
||||
@ -19,11 +19,12 @@
|
||||
今天,值得我们再次重温万圣节档案,提醒自己不要逃避开源世界的竞争。长远来看,开源软件开发模式能够大大地增进繁荣共享软件市场,而引入开源技术及其开发模式的公司,例如红帽,其发展远比那些因为“恐惧、未知与怀疑(FUD)”而固步自封的公司要好得多。如今的红帽已经拥有更加平稳的盈利潜力,在上文提到的多个开源领域都有持续的业务增长,例如云计算和大数据,相比之下,微软、甚至苹果,如果想要在这些领域有所扩展,则要在新的硬件种类方面面对高昂费用和更加危险的投资。
|
||||
|
||||
总结:不管是糖果还是软件,分享,都是前进的方向。万圣节快乐!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://thevarguy.com/open-source-application-software-companies/halloween-documents-microsofts-anti-linux-strategy-15-yea
|
||||
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
160
published/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md
Executable file
160
published/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md
Executable file
@ -0,0 +1,160 @@
|
||||
戴文的Linux内核专题:08 配置内核(4)
|
||||
================================================================================
|
||||
|
||||
在这个第四部分里,我们将继续配置更多的设置和特性。
|
||||
|
||||
这里我们被问及关于"IBM Calgary IOMMU support (CALGARY\_IOMMU)"。这个选项将会提供对IBM xSeries x366和x460的IOMMU的支持。这也将让那些32位PCI的设备工作正常——在这些系统上不支持双地址周期(DAC : Double Address Cycle)——因为该系统设置在访问超过3GB内存的时候会有问题。如果需要这些IOMMU设备可以用"iommu=off"在启动时关闭。(这些内核/模块参数会在以后的文章中讨论)
|
||||
|
||||
IOMMU(input/output memory management unit)是一个内存管理单元(MMU),它连接具有DMA功能的I/O总线到主内存上。DMA(Direct Memory Access)是许多计算机支持的一种允许特定设备不借助CPU直接访问内存的特性。双地址周期(Double Address Cycle, DAC)是64位DMA;而通常的DMA使用32位。
|
||||
|
||||
下面,我们被问及是否默认启用Calgary(Should Calgary be enabled by default? (CALGARY\_IOMMU\_ENABLED\_BY\_DEFAULT))。Calgary与上面提到的IOMMU是同一个概念。这两者之间的不同是IOMMU可以支持许多设备而Calgary只能支持IBM IOMMU设备。如果禁用了它,但是以后需要使用到它,可以使用内核参数(iommu=calgary)。
|
||||
|
||||
这里有个问题需要小心处理(Enable Maximum number of SMP Processors and NUMA Nodes (MAXSMP))。只有在内核运行在拥有很多SMP处理器和NUMA节点的情况下才启用它,如Core i7和许多AMD CPU芯片。如果系统缺乏或者只有少量的SMP处理器和NUMA节点,内核就会变得低效。这个最好选择"No"。
|
||||
|
||||
非一致性内存访问(Non-Uniform Memory Access (NUMA))是一个每块内存都需要花费更长时间访问其他部分内存的系统。一个节点就是一组内存。例如,一个NUMA系统可能有三块内存芯片。每块芯片是一个节点,在带CPU的主板上有一个节点/芯片(这是最快的节点),另外两个在不同的总线上。这两个节点需要比第一个节点花费更长的时间去访问。
|
||||
|
||||
注意:ccNUMA和NUMA目前是一样的,至少是非常相似的。
|
||||
|
||||
对称多处理器(Symmetric Multi-Processing (SMP))是NUMA的替代品。它的内存在同一根总线上。只有限定数量的CPU可以访问总线,所以这限制了SMP系统上处理器的数量。然而它内存的访问速度一样块。
|
||||
|
||||
注意:我是在为AMD64系统在编译内核,所以我会告诉你我的选择,来帮助读者理解过程和选择。如果我没有指出我的选择,那么我用的就是默认选择。如果你在为不同的系统编译或者你有不同的需求,你需要在你的情况下做出替代的选择。
|
||||
|
||||
接下来,除非配置工具已经为你做了选择,选择一个内核需要支持的最多CPU的数量。这个配置根据你给的数量优化内核。
|
||||
|
||||
接着启用或禁用"SMT (Hyperthreading) scheduler support (SCHED\_SMT)"(超线程调度器支持)。SMT调度器提升了在使用了超线程技术的Pentium 4处理器上的CPU决策能力。然而,这会带来额外的功耗,在一些系统上最好像我一样选择"no"。
|
||||
|
||||
超线程一种专有的SMT并行微处理器(Intel 实现了它)。这是多任务/多线程(同时做许多任务)的一种特殊形式,并行多线程(Simultaneous multithreading (SMT))提升了多线程执行的效率。
|
||||
|
||||
在这之后,启用或者禁用"Multi-core scheduler support (SCHED\_MC)"。这样也是一种提升多核CPU决策的特性。然而这回带来额外功耗,我选择了"No"。
|
||||
|
||||
在下一个选项中可以选择抢占模式。
|
||||
|
||||
Preemption Model(抢占模式)
|
||||
|
||||
1\. No Forced Preemption (Server) (PREEMPT\_NONE) (非强制抢占)
|
||||
|
||||
\> 2. Voluntary Kernel Preemption (Desktop) (PREEMPT\_VOLUNTARY) (自愿内核抢占)
|
||||
|
||||
3\. Preemptible Kernel (Low-Latency Desktop) (PREEMPT) (可抢占内核)
|
||||
|
||||
choice[1-3]: 2
|
||||
|
||||
抢占就是暂停一个意图让它之后继续执行的中断任务的过程。抢占强制一个进程暂停,执行中的任务无法忽视抢占。
|
||||
|
||||
接着,我们被询问关于"Reroute for broken boot IRQs (X86\_REROUTE\_FOR\_BROKEN\_BOOT\_IRQS)"。这是一个对于假中断的简单修复。假中断是一种无用的硬件中断,这些通常是有电子干扰或者错误连接的电子产品触发。记住,中断是发送给处理器需要马上注意的信号。
|
||||
|
||||
这个选项对任何机器都很重要;我怀疑任何人可能都会有禁用这个特性的理由(Machine Check / overheating reporting (X86\_MCE))。内核必须意识到过热和数据损坏,不然,系统将会继续操作,这样只会导致进一步的破坏。
|
||||
|
||||
下面,用户可以启用禁用"Intel MCE features (X86\_MCE\_INTEL)",这是一种额外的对像热度监控的Intel MCE特性的支持。因为我是为AMD64处理器编译内核所以我选择了"no"。机器检测异常(MCE)是一种当处理器发现硬件问题时的错误输出。MCE通常会导致内核严重错误(kernel panic)(相当于Windows中的"蓝屏")。
|
||||
|
||||
这个除了是AMD设备外是同一个问题Intel MCE features (X86\_MCE\_INTEL)。
|
||||
|
||||
下一个是我会禁用的调试特性(Machine check injector support (X86\_MCE\_INJECT))。这个会允许注射检查。如果你偶尔执行机器注射,那最好编译成模块而不是编译进内核。机器注射可以使设备即使实际没有错误也可以发送一个伪造的错误信息。这个用来确认内核和其他进程可以正常处理错误。比如,如果CPU过热,接着应该关机,但是开发者如何在不损坏CPU的情况下测试代码。注射错误是一种最好的方法,因为它只是一种告诉硬件发送错误信号的软件。
|
||||
|
||||
注:模块是对可能被使用或者很少执行的特性/驱动而言的。只加入在许多使用该内核的系统中用到的特性/驱动到内核中。
|
||||
|
||||
如果内核很可能用在Dell笔记本上,那么启用这个特性(Dell laptop support (I8K))。否则,如果一些用户可能在戴尔笔记本电脑上用到这个内核,将其作为一个模块加入。如果这个内核不打算支持Dell笔记本,那就像我一样忽略掉它。特别地,这个支持是一个允许Dell Inspiron 8000系列笔记本访问处理器的系统管理模式的驱动。系统管理模式的目的是得到处理器的温度和风扇状态,这对一些需要控制风扇的系统有用。
|
||||
|
||||
下面,用户可以选择微码加载支持(CPU microcode loading support (MICROCODE))。这可以允许用户在支持这个特性的AMD或者Intel芯片上更新微码。
|
||||
|
||||
注意:为了加载微码,你必须拥有一个为你的处理器设计的合法的二进制微代码拷贝。
|
||||
|
||||
如果要加载微码补丁(修复bug或加入次要的特性)到intel芯片上(Intel microcode loading support (MICROCODE\_INTEL)),这个就必须启用。这里我禁用了它。
|
||||
|
||||
然后是AMD芯片的类似选项(AMD microcode loading support (MICROCODE\_AMD))。
|
||||
|
||||
启用这个支持(/dev/cpu/*/msr - Model-specific register support (X86\_MSR))可以允许某个处理器有权限使用x86特殊模块寄存器(Model-Specific Registers (MSRs))。这些寄存器是一些字符设备,包括major 202下minor 0到31的设备((/dev/cpu/0/msr to /dev/cpu/31/msr))。这个特性用在多处理器系统上。每个虚拟字符设备都连接到一个特定的CPU。
|
||||
|
||||
注意:MSRs被用来改变CPU设备、调试、性能监控和执行追踪。MSRs使用x86指令集。
|
||||
|
||||
在这之后,我们有一个选项"CPU information support (X86\_CPUID)",启用这个特性允许处理器访问x86 CPUID指令,这需要通过字符设备在一个特定的CPU上执行。这些字符设备包括major 202下minor 0到31的设备(/dev/cpu/0/msr to /dev/cpu/31/msr),就像上面x86\_MSR支持的这些。
|
||||
|
||||
如果处理器支持,启用内核线性映射来使用1GB的内存页(Enable 1GB pages for kernel pagetables (DIRECT\_GBPAGES))。启用这个可以帮助减轻TLB的压力。
|
||||
|
||||
页是内存本身的基本单位(位是数据的基本单位)。页的大小是由硬件自身决定的。页码表是虚拟和物理内存间的映射。物理内存是设备上的内存。虚拟内存是到内存的地址。依赖于系统架构,硬件可以访问大于实际内存地址的地址。举例来说,一个64位系统拥有6GB内存,管理员在需要时可以加上更多的内存。这是因为还有很多虚拟内存地址。然而,在很多32位系统上,系统管理员可以增加一条8GB的内存,但是系统无法完全使用它,因为系统中没有足够的虚拟内存地址去访问大容量的内存。转换后援缓冲器(Translation Lookaside Buffer (TLB))是一种提升虚拟内存转换速度的缓存系统。
|
||||
|
||||
下面,我们看到了NUMA选项(Numa Memory Allocation and Scheduler Support (NUMA))。这可以允许内核在CPU本地内存分配器上分配CPU可使用的内存。这个支持同样可使内核更好感知到NUMA。很少的32位系统需要这个特性,但是一些通用的645位处理器使用这个特性。我选择了"no"。
|
||||
|
||||
为了系统使用旧方式来检测AMD NUMA节点拓扑,启用这个特性(Old style AMD Opteron NUMA detection (AMD\_NUMA))。下一个选项是一种更新的检测方式(ACPI NUMA detection (X86\_64\_ACPI\_NUMA))。如果两个都启用,新的方式将会占支配作用。一些硬件在使用其中一种方式而不是另外一个时工作得更好。
|
||||
|
||||
如果为了调试目的的NUMA仿真,可以启用下一个特性(NUMA emulation (NUMA\_EMU))。
|
||||
|
||||
注意:如果你不打算进行调试并且你需要一个快速、轻量级系统,那么禁用尽可能多的调试特性。
|
||||
|
||||
下一个选项中,选择你的内核打算如何处理NUMA节点的最大数量。接下来选择内存模型,这里可能只有一个内存模型选择。内存模型指定了内存如何存储。
|
||||
|
||||
Maximum NUMA Nodes (as a power of 2) (NODES\_SHIFT) [6]
|
||||
|
||||
Memory model
|
||||
|
||||
\> 1. Sparse Memory (SPARSEMEM\_MANUAL)
|
||||
|
||||
choice[1]: 1
|
||||
|
||||
为了提升性能,这里有一个选项用通过虚拟内存映射(Sparse Memory virtual memmap (SPARSEMEM\_VMEMMAP))来优化pfn\_to\_page和page\_to\_pfn操作。页帧号是每页被给定的号码。这两个操作用来从号码得到页或者从页得到号码。
|
||||
|
||||
下一个选项是允许一个节点可以移除内存(Enable to assign a node which has only movable memory (MOVABLE\_NODE))。内核页通常无法移除。当启用后,用户可以热插拔内存节点,同样可移除内存允许内存整理。作为出入内存的数据,只要有可用空间一组数据可能被划分到不同内存。
|
||||
|
||||
接着前面的内存问题,我们还有更多的问题。这些可能已被配置工具预配置了。第三个选项(BALLOON\_COMPACTION),当启用时可以帮助减少内存碎片。碎片内存会减慢系统速度。第四个选项(COMPACTION)允许内存压缩。下面列到的第五个选项(MIGRATION)允许页面被移动。
|
||||
|
||||
- Allow for memory hot-add (MEMORY\_HOTPLUG) (允许内存热添加)
|
||||
- Allow for memory hot remove (MEMORY\_HOTREMOVE) (允许内存热移除)
|
||||
- Allow for balloon memory compaction/migration (BALLOON\_COMPACTION) (允许泡状内存规整和合并)
|
||||
- Allow for memory compaction (允许内存规整)
|
||||
- Page migration (MIGRATION) (页合并)
|
||||
|
||||
注意:启用可移动内存会启用以上5个特性。
|
||||
|
||||
下一步,我们可以"Enable KSM for page merging (KSM)"。内核同页合并(Kernel Samepage Merging (KSM))会查看程序认为可以合并的内核。如果两页内存完全相同这可以节约内存。一块内存可以被删除或者被合并,并且只有一块可以使用。
|
||||
|
||||
配置工具可能会自动选择保存多少内存用于用户分配(Low address space to protect from user allocation (DEFAULT\_MMAP\_MIN\_ADDR) [65536])。
|
||||
|
||||
下一个选项很重要(Enable recovery from hardware memory errors (MEMORY\_FAILURE))。如果内存故障并且系统有MCA恢复或者ECC内存,系统就可以继续运行并且恢复。要使用这个特性,硬件自身和内核都必须支持。
|
||||
|
||||
机器检测架构(Machine Check Architecture (MCA))是一个一些CPU上可以发送硬件错误信息给操作系统的特性。错误更正码内存(Error-correcting code memory (ECC memory))是一种内存设备检测和纠正错误的形式。
|
||||
|
||||
下面,配置工具会自动启用"HWPoison pages injector (HWPOISON\_INJECT)"。这个特性允许内核标记一块坏页为"poisoned",接着内核会杀死创建坏页的程序。这有助于停止并纠正错误。
|
||||
|
||||
为了允许内核使用大页(Transparent Hugepage Support (TRANSPARENT\_HUGEPAGE)),启用这个特性。这可以加速系统但是需要更多内存。嵌入式系统不必使用这个特性。嵌入式系统通常只有非常小的内存。
|
||||
|
||||
如果启用了上面的,那么必须配置大页的sysfs支持。
|
||||
|
||||
Transparent Hugepage Support sysfs defaults
|
||||
|
||||
1\. always (TRANSPARENT\_HUGEPAGE\_ALWAYS)
|
||||
|
||||
\> 2. madvise (TRANSPARENT\_HUGEPAGE\_MADVISE)
|
||||
|
||||
choice[1-2?]: 2
|
||||
|
||||
下面的选项是增加process\_vm\_readv和process\_vm\_writev这两个系统调用(Cross Memory Support (CROSS\_MEMORY\_ATTACH))。这允许特权进程访问另外一个程序的地址空间。
|
||||
|
||||
如果有tmem,启用缓存清理(cleancache)通常是一个好主意 (Enable cleancache driver to cache clean pages if Transcendent Memory (tmem) is present (CLEANCACHE))。当一些内存页需要从内存中移除时,cleancache会将页面放在cleancache-enabled的文件系统上。当需要该页时,页会被重新放回内存中。超内存(tmem)没有一组已知大小的内存,内核对此内存使用间接寻址。
|
||||
|
||||
下一个选项允许在tmen激活后缓存交换页(Enable frontswap to cache swap pages if tmem is present (FRONTSWAP))。frontswap在交换分区放置数据。交换特性的支持需要这个。
|
||||
|
||||
最好启用下一个特性(Check for low memory corruption (X86\_CHECK\_BIOS\_CORRUPTION))。这会检测低位内存的内存损坏情况。这个特性在执行期被禁止。为了启用这个特性,在内核命令行内加入 "memory\_corruption\_check=1"(这会在以后的文章中讨论;这不同于任何命令行)。即使经常执行这个特性,也只使用非常小的开销(接近没有)。
|
||||
|
||||
接下来我门可以设置内存损坏检测的默认设置(“Set the default setting of memory\_corruption\_check (X86\_BOOTPARAM\_MEMORY\_CORRUPTION\_CHECK))。这可以选择是否开启或关闭memory\_corruption\_check。最好启用内存损坏检测不然如果一部分重要内存损坏后可能会导致数据丢失和系统崩溃。
|
||||
|
||||
这个选项关注的是BIOS(Amount of low memory, in kilobytes, to reserve for the BIOS (X86\_RESERVE\_LOW) [64])。配置工具通常知道给BIOS预留内存的最佳大小。
|
||||
|
||||
对于Intel P6处理器,开发者可以启用存储区域类型寄存器(MTRR (Memory Type Range Register) support (MTRR))。这用于连接着VGA卡的AGP和PCI卡。启用这个特性内核会创建/proc/mtrr。
|
||||
|
||||
如果X驱动需要加入回写入口,那么启用下面的选项(MTRR cleanup support (MTRR\_SANITIZER))。这会将MTRR的布局从连续转换到离散。存储区域类型寄存器(Memory type range registers (MTRRs))提供了一种软件访问CPU缓存的方法。
|
||||
|
||||
下面,配置工具已经设置了一些MTRR选项
|
||||
|
||||
- MTRR cleanup enable value (0-1) (MTRR\_SANITIZER\_ENABLE\_DEFAULT) [1]
|
||||
|
||||
- MTRR cleanup spare reg num (0-7) (MTRR\_SANITIZER\_SPARE\_REG\_NR\_DEFAULT) [1]
|
||||
|
||||
为了设置页级缓冲控制,那就启用PAT属性(x86 PAT support (X86\_PAT))。页属性表(Page Attribute Table (PATs))是现在版的MTRRs并比它更灵活。如果你经历过因启用它而引发的启动问题,那么禁用这个特性后重新编译内核。我选择了"no"。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-4.4392/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,11 +1,11 @@
|
||||
Linux的未来:进化无处不在
|
||||
================================================================================
|
||||
|
||||
*InfoWorld* —— Mark Shuttleworth最近关闭了[Ubuntu Linux排名第一的bug][1](“微软拥有最高的市场占有率”),导致了一些争议,也引出了一些意味深长的讨论,讨论自从1991年Linus Torvalds以个人宠物项目发明Linux以来,Linux所走过的路。
|
||||
*InfoWorld* —— Mark Shuttleworth之前关闭了[Ubuntu Linux的第一号bug][1](“微软拥有最高的市场占有率”),导致了一些争议,也引出了一些意味深长的讨论,讨论自从1991年Linus Torvalds以个人玩物项目发明Linux以来,Linux所走过的路。
|
||||
|
||||
微软也许不会那么快退出桌面系统的历史舞台,但是随着Linux逐渐成长成为IT行业的一块重要基石,计算机的本质也已经完全改变。如今,从云服务到手机操作系统,几乎行业内的所有领域都受到了Linux的直接推动或间接影响。
|
||||
|
||||
**Linux体系:提交、审核、采纳**
|
||||
###Linux体系:提交、审核、采纳
|
||||
|
||||
伴随着支持者的不断增加,Linux的开发进程也在不断加快。
|
||||
|
||||
@ -13,7 +13,7 @@ Linux的未来:进化无处不在
|
||||
|
||||
或许,更重要的,是快速成长中的Linux如何应对挑战,变得更加成熟稳定,成为在多个领域主导市场发展的领头羊。接下来,让我们分别从以下几个方面尝试预测一下Linux的未来:原材料、社区产品与企业贡献、其特质所面对的各种挑战、技术实力和成长方向。
|
||||
|
||||
**Linux作为原材料:弯曲、塑形,你想让它是什么样都可以**
|
||||
###Linux作为原材料:弯曲、塑形,你想让它是什么样都可以
|
||||
|
||||
如果用一个形容词来总结Linux独有的优点,那就是“可塑性(malleable)”。Linux是这样一种原材料,可以装订切割,也可以为任意场合量身定做,小到嵌入式设备,大到大规模并行超级计算机。
|
||||
|
||||
@ -23,7 +23,7 @@ Linux基金会执行董事Jim Zemlin承认,“Linux终端用户的体验的的
|
||||
|
||||
“它就像一块建筑地基,使得Google能建立Android和Chromebooks,Amazon建立Kindle,Canonical建立Ubuntu,等等这样的例子还有很多。所有这些产品对用户来说意味着不同的使用体验,而选择权完全在消费者自己手里。”
|
||||
|
||||
Mark Baker,Canonical公司的Ubuntu服务器产品经理,目前负责带领Ubuntu项目。他的话更加具体准确地表明了这一观点:“开源意味着选择的自由。”开源自然会促进模块化,因此,无论你是一个技术宅男还是正在开发数据中心的系统架构师,“通过开源,你可以选择最适合你的组件”。
|
||||
Mark Baker,Canonical公司的Ubuntu服务器产品经理,目前负责领导Ubuntu项目。他的话更加具体准确地表明了这一观点:“开源意味着选择的自由。”开源自然会促进模块化,因此,无论你是一个技术宅男还是正在开发数据中心的系统架构师,“通过开源,你可以选择最适合你的组件”。
|
||||
|
||||
但是IDC的操作环境分析师兼系统软件项目副经理 Al Gillen 却质疑这种完全放任自流的价值观。“Linux是开源的,由此,任何人都可以修改代码,把它变成别的什么东西。但是,现代工业已经表明,没有价值的产品会被淘汰,代码的发展主线应当始终紧靠主流价值观。”
|
||||
|
||||
@ -31,15 +31,15 @@ Android用户对此有直接的深刻体会,诸多Android操作系统间存在
|
||||
|
||||
讽刺的是,即使“可塑性”真的是Linux的最大优势,但过犹不及,Linux作为这样的原材料将会付出成倍的代价。
|
||||
|
||||
Cloudera的工程部经理 Eric Sammer 并没有孤立地看待这个问题,他认为Linux的用户群“与Firefox或Apache等产品的用户群并不一样”,Linux“面向的并不是终端用户,而是操作系统类工程师”,因此它需要与“很多其他软件一同建立一个完整的系统 —— 其中大部分软件是捆绑发布的,并对用户透明(例如boot loader)。”就如同Torvalds在Linux最初的内核发布日志中所亲自记录的,“只有内核,你什么也干不了。”
|
||||
Cloudera的工程部经理 Eric Sammer 并没有孤立地看待这个问题,他认为Linux的用户群“与Firefox或Apache等产品的用户群并不一样”,Linux“面向的并不是终端用户,而是操作系统类工程师”,因此它需要与“很多其他软件一同建立一个完整的系统 —— 其中大部分软件是捆绑发布的,并对用户透明(例如boot loader)。”就如同Torvalds在Linux最初的内核发布日志中亲自写道,“只有内核,你什么也干不了。”
|
||||
|
||||
Android验证了Gillen和Sammer以上两人的观点,作为Linux最受欢迎的“衍生品”,Android所有的附加值都来自于Google以及Google专门为其开发的App生态系统。因此说,Linux的可塑性只是它成为真正产品的第一步,正如下文中这些最成功的Linux拥护者 —— 企业,所熟悉的一样。
|
||||
|
||||
**企业的贡献:利还是弊?**
|
||||
###企业的贡献:利还是弊?
|
||||
|
||||
Linux的另一个特点,它是一个合作产物,由众多贡献者共同努力缔造而成。那么,这些贡献者从何而来?
|
||||
|
||||
答案:企业。企业是最主要的贡献者,但是他们忠于利益,支持Linux只是为了自身的未来发展。除去Red Hat(不包括Canonical,它是最为人所熟知的Linux发行商),排名前几位的贡献者主要包括Intel,IBM,德州仪器,甚至还有微软。
|
||||
答案:企业。企业是最主要的贡献者,但是他们忠于利益,支持Linux只是为了自身的未来发展。除去Red Hat(不同于Canonical,RedHat是最为人所熟知的Linux解决方案供应商),排名前几位的贡献者主要包括Intel,IBM,德州仪器,甚至还有微软。
|
||||
|
||||
Linux的所谓“灵活性”,即能够运行在多个平台或设备上的能力,很大程度上来源于以上这些贡献者,而他们的主要动力则来自于不断萌发的自身需要:例如,微软为Linux内核添加的代码,大大改善了Linux在其产品Hyper-V下的运行状况。
|
||||
|
||||
@ -55,7 +55,7 @@ Mark Coggin,Linux红帽企业版的市场高级总监,他坚信,“最佳
|
||||
|
||||
还有一小部分观点认为,企业发行版Linux其实是一种“被绑架的Linux”,正如Gillen所提倡的 —— 这是一种让Linux“稍稍不那么贴合主流用户群需求”的方法。他确信,对Linux的商业化支持与商业优化“对Linux的开发模式大有裨益,而不是相反。”
|
||||
|
||||
**同样的,对Zenmlin来说,Linux开发“并不是一个零和游戏”**
|
||||
###同样的,对Zenmlin来说,Linux开发“并不是一个零和游戏”
|
||||
|
||||
“如果移动领域的某位开发者改善了耗电量,另一位在数据中心工作的开发者会因此而受益,他可以使用前者的改进来确保自己的数据服务运行得更有效率,”Zemlin说道,“共享开发正是Linux如此强大的原因。”
|
||||
|
||||
@ -65,7 +65,7 @@ Mark Coggin,Linux红帽企业版的市场高级总监,他坚信,“最佳
|
||||
|
||||
GPL协议第三版 —— 从Linux发布协议的一个早期版本改进而来 —— 当初修改该协议的部分原因就是为了应对上述行为。尽管如此,协议只能防止获取他人代码后作为Web服务重新开发。除此以外,并没有什么固有的方法(或法律手段)能够禁止公司或个人在代码开发完成后封闭独占这些改进后的代码,也许,这就是Linux对全世界自由开放所不可避免的一部分社会成本吧。
|
||||
|
||||
**Linux面临的最大威胁**
|
||||
###Linux面临的最大威胁
|
||||
|
||||
感谢开源机制,Linux始终能够作为一个开源项目,企业才无法像以前那么独断专行。那除了企业,现在什么才是Linux所面临的最大威胁呢?
|
||||
|
||||
@ -94,11 +94,11 @@ Linux所要面对的另外一个潜在威胁是公司兼并 —— 这并不会
|
||||
|
||||
简而言之,目前Linux面临的最大威胁来自于它自身 —— 无意中,衡量Linux产品的第一标准已经变成了如何让它看起来更吸引人。一直以来,Linux所固有的灵活性和可塑性帮助它战胜自满和企业兼并,克服重重困难,但如今还能否一如既往,情况并不明朗。
|
||||
|
||||
**路在何方?**
|
||||
###路在何方?
|
||||
|
||||
毫无疑问,无论从哪个层面来看,Linux现在都正处在关键的岔路口,它将去往何方,又将付出怎样的代价,都值得探讨。
|
||||
|
||||
Linux最明显的未来之路,首先,它不仅仅是一块基石,或者说不仅仅是一种建立基础设施的途径,其次,它应当减少过多的产品形式。最后,真正的革新,不仅仅是拓展Linux本身,还要拓展其作为发现问题解决问题的创新办法,目前还很少有人如此对待Linux,要想真正做到这一点,除了呼吁更多的人改变对Linux的看法,还必须打破技术壁垒,将眼光放得更长远。
|
||||
Linux最明显的未来之路,首先,它不仅仅是一块基石,或者说不仅仅是一种建立基础设施的途径;其次,它应当减少过多的产品形式;最后,真正的革新,不仅仅是拓展Linux本身,还要拓展其作为发现问题解决问题的创新办法。目前还很少有人如此对待Linux,要想真正做到这一点,除了呼吁更多的人改变对Linux的看法,还必须打破技术壁垒,将眼光放得更长远。
|
||||
|
||||
对此,Coggin说道:“Linux正在逐渐成为一个更加成套或灵活的操作系统,进而超越其作为一个基础设施平台的作用。我们看到,开发者和架构师们正在使用Linux建立新一代解决方案,创造出新一代的企业架构。”这些工作中的大部分已经开始付诸实施,他说道,包括“云计算、大数据、移动领域以及社交网络等多个方面”。
|
||||
|
||||
@ -106,11 +106,11 @@ Gillen也同意上述观点,Linux“即将成为公共云基础设施中非常
|
||||
|
||||
Baker说道,“Linux已经在运行着云业务,这是毫无疑问的,它需要巩固自己作为基础设施平台的位置 —— 这意味着它需要时刻保持最新的技术领先优势,例如ARM服务芯片、超大规模集成电路、网络设计,以及所有的软件设计数据中心。”上述这些工作应当可以作为开源系统硬件设计(例如[开源计算机项目][3])的有效补充。
|
||||
|
||||
**Linux体系:提交、审核、采纳**
|
||||
###Linux体系:提交、审核、采纳
|
||||
|
||||
伴随着正面需求不断增长,Linux的开发进程也在不断加快。
|
||||
|
||||
Linux作为普遍存在的基础设施元素,其中一个潜在的缺点就是它有可能成为商业化的制度产物,正如曾经它所取代的闭源Unix们。但是Zemlin认为,Linux极大的灵活性在这方面发挥了作用:“十几年前,如果你问到Linus Torvalds或其他社区成员,Linux是否会比其他任何平台都要驱动更多的移动电话,他们当然会说‘不会’。所以,我们要做的只是注视Linux的发展,不要尝试去预测它,因为所有的预测几乎都会是错误的。”
|
||||
Linux作为普遍存在的基础设施元素,其中一个潜在的缺点就是它有可能成为商业化的制度产物,正如曾经它所取代的闭源Unix们。但是Zemlin认为,Linux极大的灵活性在这方面发挥了作用:“十几年前,如果你问到Linus Torvalds或其他社区成员,Linux是否会比其他任何平台都要更多的装到移动电话里,他们当然会说‘不会’。所以,我们要做的只是注视Linux的发展,不要尝试去预测它,因为所有的预测几乎都会是错误的。”
|
||||
|
||||
另一个重要的未来发展方向,就像上面提到的,“独立于Google之外,在移动领域有更大的发展,”Baker如此预测道。像Mozilla专门针对移动电话的Firefox操作系统项目,就是这样一种典型的尝试,尽管在Google的存在下,以及Android如此巨大的市场份额面前,其成功的几率并不明朗。
|
||||
|
||||
@ -124,7 +124,7 @@ Linux作为普遍存在的基础设施元素,其中一个潜在的缺点就是
|
||||
|
||||
via: http://www.networkworld.com/news/2013/101513-the-future-of-linux-evolving-274829.html
|
||||
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,7 +1,9 @@
|
||||
#使用Wine在Linux上玩游戏?这儿是一些你为什么应该立即转到Steam平台的理由#
|
||||
还在使用Wine在Linux上玩游戏?别傻了,用Steam吧!
|
||||
==================================
|
||||
|
||||
![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2012/12/steamforlinux.png)
|
||||
|
||||
在过去的几个月中,Steam平台受到了众人的关注。并不是因为它带来的游戏,而是由于它拓展支持了不同的操作系统。假如你好没有听说,那么我告诉你,官方宣布Steam计划支持Linux,而且已经持续改进他们的beta版Linux客户端。花不了多长时间,就可以让Steam的Linux客户端平稳下来,所以现在需要做的事情就只是把游戏移植到Linux上了。
|
||||
在过去的几个月中,Steam平台受到了众人的关注。并不是因为它带来的游戏,而是由于它拓展支持了不同的操作系统。假如你还没有听说过,那么我告诉你,官方宣布Steam计划支持Linux,而且还在持续改进他们的beta版Linux客户端。花不了多长时间,就可以让Steam的Linux客户端平稳下来,所以现在需要做的事情就只是把游戏移植到Linux上了。
|
||||
|
||||
现在这项非常重要的服务已经可以在我们可爱的企鹅上使用,这儿还有好多理由指出你为什么应该至少考虑一下转换到Linux平台。
|
||||
|
||||
@ -9,25 +11,25 @@
|
||||
|
||||
我将以这个明显的优点作为开始 - 使用Steam玩游戏时,性能表现会好很多。当然,同使用Wine玩游戏相比,那就更加显得更加快速咯,因为游戏是原生运行的,无需兼容层。性能是玩游戏时最重要的因素之一,所以人们怎么可以错过这么一个显著的优点呢。
|
||||
|
||||
另外,我还注意到使用Steam玩游戏比在Windows上玩游戏还更加快速?同样的硬件同一款游戏,在linux上的表现比Windows上的表现还好。这一点别说比人,连我自己都没想到。
|
||||
另外,我还注意到使用Steam玩游戏比在Windows上玩游戏还更加快速?同样的硬件同一款游戏,在linux上的表现比Windows上的表现还好。这一点别说别人,连我自己都没想到。
|
||||
|
||||
###兼容性###
|
||||
|
||||
![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/01/switch_steam_wine.jpg)
|
||||
|
||||
无论何时你购买一个游戏,你均无法保证你购买的游戏可以在Wine上良好运行。虽然有一个Wine兼容性数据库,上面列出了Wine兼容的应用和游戏,但是这只是通过告诉你那些你想购买但是有可能不兼容的应用或游戏从而节省你的金钱 。然而,使用Steam,那些支持Linux的所有游戏都可以保证兼容,不需要去询问任何兼容性问题。
|
||||
无论何时你购买一个游戏,你都无法保证你购买的游戏可以在Wine上良好运行。虽然有一个Wine兼容性数据库,上面列出了Wine兼容的应用和游戏,但是这只是告诉你有哪些想购买但是有可能不兼容的应用或游戏,从而节省你的金钱。然而,使用Steam,那些支持Linux的所有游戏都可以保证兼容,不需要去询问任何兼容性问题。
|
||||
|
||||
###Steam的优点###
|
||||
|
||||
![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/01/switch_steam_window.jpg)
|
||||
|
||||
当然,转到Steam平台你就可以获得它所有的好处。这包括:偶尔的价格优惠(尤其是那些在售的游戏),完全在在线体验不在需要物理媒介,游戏和客户端 更新时你可以保持同步更新等。
|
||||
当然,转到Steam平台你就可以获得它所有的好处。这包括:偶尔的价格优惠(尤其是那些在售的游戏),完全在线体验,不再需要物理介质,游戏和客户端更新时你可以保持同步更新等。
|
||||
|
||||
例如,若你在你的电脑上重装了系统,你只需打开Steam,坐在一旁休息,它就可以自动下载并安装所有你安装过的游戏。在Windows和Mac OS X上,人们非常喜欢Steam的这种运作方式,所以这是一个你购买游戏的好去处。
|
||||
|
||||
###让你的声音被听到###
|
||||
###后排的朋友,让我听到你的声音!###
|
||||
|
||||
最后,转到Steam平台,你是在表明你的态度。若Steam对于Linux平台的努力无法引起你游戏的兴趣,那么我会感到非常惊讶。作为社区的一份子,我们需要对那些我们喜欢的项目 表示支持。转到Steam平台,不仅可以让Steam公司对于在Linux平台上的冒险值得,而且也告诉了其它人Linux完全可以作为游戏平台——只是由于历史的缘故,人们只是没有在这方面投入足够的时间和经历使其取得突破而已。
|
||||
最后,转到Steam平台,你是在表明你的态度。若Steam对于Linux平台的努力无法引起你游戏的兴趣,那么我会感到非常惊讶。作为社区的一份子,我们需要对那些我们喜欢的项目表示支持。转到Steam平台,不仅可以让Steam公司觉得对于在Linux平台上的冒险值得,而且也告诉了其它人Linux完全可以作为游戏平台——只是由于历史的缘故,人们只是没有在这方面投入足够的时间和经历使其取得突破而已。
|
||||
|
||||
假如我们向人们展示使用Linux的人们也是喜欢玩游戏的,而且通过支持Linux是可以获得利润的,那么人们就可能更加乐意开发支持Linux的游戏。另外,我们都希望有更多的Linux原生游戏,难道不是吗?
|
||||
|
||||
@ -39,6 +41,6 @@
|
||||
|
||||
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)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,54 +0,0 @@
|
||||
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
|
291
sources/10 basic examples of linux netstat command.md
Normal file
291
sources/10 basic examples of linux netstat command.md
Normal file
@ -0,0 +1,291 @@
|
||||
[DONING]BY FingerLiu
|
||||
10 basic examples of linux netstat command
|
||||
================================================================================
|
||||
### Netstat ###
|
||||
|
||||
Netstat is a command line utility that can be used to list out all the network (socket) connections on a system. It lists out all the tcp, udp socket connections and the unix socket connections. Apart from connected sockets it can also list listening sockets that are waiting for incoming connections. So by verifying an open port 80 you can confirm if a web server is running on the system or not. This makes it a very useful tool for network and system administrators. So in this tutorial we shall be checking out few examples of how to use netstat to find information about network connections and open ports on a system.
|
||||
|
||||
Here is a quick intro to netstat from the man pages
|
||||
|
||||
> netstat - Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships
|
||||
|
||||
### 1. List out all connections ###
|
||||
|
||||
The first and most simple command is to list out all the current connections. Simply run the netstat command with the a option.
|
||||
|
||||
$ netstat -a
|
||||
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 enlightened:domain *:* LISTEN
|
||||
tcp 0 0 localhost:ipp *:* LISTEN
|
||||
tcp 0 0 enlightened.local:54750 li240-5.members.li:http ESTABLISHED
|
||||
tcp 0 0 enlightened.local:49980 del01s07-in-f14.1:https ESTABLISHED
|
||||
tcp6 0 0 ip6-localhost:ipp [::]:* LISTEN
|
||||
udp 0 0 enlightened:domain *:*
|
||||
udp 0 0 *:bootpc *:*
|
||||
udp 0 0 enlightened.local:ntp *:*
|
||||
udp 0 0 localhost:ntp *:*
|
||||
udp 0 0 *:ntp *:*
|
||||
udp 0 0 *:58570 *:*
|
||||
udp 0 0 *:mdns *:*
|
||||
udp 0 0 *:49459 *:*
|
||||
udp6 0 0 fe80::216:36ff:fef8:ntp [::]:*
|
||||
udp6 0 0 ip6-localhost:ntp [::]:*
|
||||
udp6 0 0 [::]:ntp [::]:*
|
||||
udp6 0 0 [::]:mdns [::]:*
|
||||
udp6 0 0 [::]:63811 [::]:*
|
||||
udp6 0 0 [::]:54952 [::]:*
|
||||
Active UNIX domain sockets (servers and established)
|
||||
Proto RefCnt Flags Type State I-Node Path
|
||||
unix 2 [ ACC ] STREAM LISTENING 12403 @/tmp/dbus-IDgfj3UGXX
|
||||
unix 2 [ ACC ] STREAM LISTENING 40202 @/dbus-vfs-daemon/socket-6nUC6CCx
|
||||
|
||||
The above command shows all connections from different protocols like tcp, udp and unix sockets. However this is not quite useful. Administrators often want to pick out specific connections based on protocols or port numbers for example.
|
||||
|
||||
### 2. List only TCP or UDP connections ###
|
||||
|
||||
To list out only tcp connections use the t options.
|
||||
|
||||
$ netstat -at
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 enlightened:domain *:* LISTEN
|
||||
tcp 0 0 localhost:ipp *:* LISTEN
|
||||
tcp 0 0 enlightened.local:36310 del01s07-in-f24.1:https ESTABLISHED
|
||||
tcp 0 0 enlightened.local:45038 a96-17-181-10.depl:http ESTABLISHED
|
||||
tcp 0 0 enlightened.local:37892 ABTS-North-Static-:http ESTABLISHED
|
||||
.....
|
||||
|
||||
Similarly to list out only udp connections use the u option.
|
||||
|
||||
$ netstat -au
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
udp 0 0 *:34660 *:*
|
||||
udp 0 0 enlightened:domain *:*
|
||||
udp 0 0 *:bootpc *:*
|
||||
udp 0 0 enlightened.local:ntp *:*
|
||||
udp 0 0 localhost:ntp *:*
|
||||
udp 0 0 *:ntp *:*
|
||||
udp6 0 0 fe80::216:36ff:fef8:ntp [::]:*
|
||||
udp6 0 0 ip6-localhost:ntp [::]:*
|
||||
udp6 0 0 [::]:ntp [::]:*
|
||||
|
||||
The above output shows both ipv4 and ipv6 connections.
|
||||
|
||||
### 3. Disable reverse dns lookup for faster output ###
|
||||
|
||||
By default, the netstat command tries to find out the hostname of each ip address in the connection by doing a reverse dns lookup. This slows down the output. If you do not need to know the host name and just the ip address is sufficient then suppress the hostname lookup with the n option.
|
||||
|
||||
$ netstat -ant
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
|
||||
tcp 0 0 192.168.1.2:49058 173.255.230.5:80 ESTABLISHED
|
||||
tcp 0 0 192.168.1.2:33324 173.194.36.117:443 ESTABLISHED
|
||||
tcp6 0 0 ::1:631 :::* LISTEN
|
||||
|
||||
The above command shows ALL TCP connections with NO dns resolution. Got it ? Good.
|
||||
|
||||
### 4. List out only listening connections ###
|
||||
|
||||
Any network daemon/service keeps an open port to listen for incoming connections. These too are like socket connections and are listed out by netstat. To view only listening ports use the l options.
|
||||
|
||||
$ netstat -tnl
|
||||
Active Internet connections (only servers)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
|
||||
tcp6 0 0 ::1:631 :::* LISTEN
|
||||
|
||||
Now we can see only listening tcp ports/connections. If you want to see all listening ports, remove the t option. If you want to see only listening udp ports use the u option instead of t.
|
||||
Make sure to remove the 'a' option, otherwise all connections would get listed and not just the listening connections.
|
||||
|
||||
### 5. Get process name/pid and user id ###
|
||||
|
||||
When viewing the open/listening ports and connections, its often useful to know the process name/pid which has opened that port or connection. For example the Apache httpd server opens port 80. So if you want to check whether any http server is running or not, or which http server is running, apache or nginx, then track down the process name.
|
||||
|
||||
The process details are made available by the 'p' option.
|
||||
|
||||
~$ sudo netstat -nlpt
|
||||
Active Internet connections (only servers)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
|
||||
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN 1144/dnsmasq
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 661/cupsd
|
||||
tcp6 0 0 ::1:631 :::* LISTEN 661/cupsd
|
||||
|
||||
When using the p option, netstat must be run with root privileges, otherwise it cannot detect the pids of processes running with root privileges and most services like http and ftp often run with root privileges.
|
||||
|
||||
Along with process name/pid its even more useful to get the username/uid owning that particular process. Use the e option along with the p option to get the username too.
|
||||
|
||||
$ sudo netstat -ltpe
|
||||
Active Internet connections (only servers)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
|
||||
tcp 0 0 enlightened:domain *:* LISTEN root 11090 1144/dnsmasq
|
||||
tcp 0 0 localhost:ipp *:* LISTEN root 9755 661/cupsd
|
||||
tcp6 0 0 ip6-localhost:ipp [::]:* LISTEN root 9754 661/cupsd
|
||||
|
||||
The above example lists out Listening connections of Tcp type with Process information and Extended information.
|
||||
The extended information contains the username and inode of the process. This is a useful command for network administrators.
|
||||
|
||||
**Note** - If you use the n option with the e option, the uid would be listed and not the username.
|
||||
|
||||
### 6. Print statistics ###
|
||||
|
||||
The netstat command can also print out network statistics like total number of packets received and transmitted by protocol type and so on.
|
||||
|
||||
To list out statistics of all packet types
|
||||
|
||||
$ netstat -s
|
||||
Ip:
|
||||
32797 total packets received
|
||||
0 forwarded
|
||||
0 incoming packets discarded
|
||||
32795 incoming packets delivered
|
||||
29115 requests sent out
|
||||
60 outgoing packets dropped
|
||||
Icmp:
|
||||
125 ICMP messages received
|
||||
0 input ICMP message failed.
|
||||
ICMP input histogram:
|
||||
destination unreachable: 125
|
||||
125 ICMP messages sent
|
||||
0 ICMP messages failed
|
||||
ICMP output histogram:
|
||||
destination unreachable: 125
|
||||
... OUTPUT TRUNCATED ...
|
||||
|
||||
To print out statistics of only select protocols like TCP or UDP use the corresponding options like t and u along with the s option. Simple!
|
||||
|
||||
### 7. Display kernel routing information ###
|
||||
|
||||
The kernel routing information can be printed with the r option. It is the same output as given by the route command. We also use the n option to disable the hostname lookup.
|
||||
|
||||
$ netstat -rn
|
||||
Kernel IP routing table
|
||||
Destination Gateway Genmask Flags MSS Window irtt Iface
|
||||
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
|
||||
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
|
||||
|
||||
### 8. Print network interfaces ###
|
||||
|
||||
The netstat command can also print out the information about the network interfaces. The i option does the task.
|
||||
|
||||
$ netstat -i
|
||||
Kernel Interface table
|
||||
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
|
||||
eth0 1500 0 31611 0 0 0 27503 0 0 0 BMRU
|
||||
lo 65536 0 2913 0 0 0 2913 0 0 0 LRU
|
||||
|
||||
The above output contains information in a very raw format. To get a more human friendly version of the output use the e option along with i.
|
||||
|
||||
$ netstat -ie
|
||||
Kernel Interface table
|
||||
eth0 Link encap:Ethernet HWaddr 00:16:36:f8:b2:64
|
||||
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
|
||||
inet6 addr: fe80::216:36ff:fef8:b264/64 Scope:Link
|
||||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||||
RX packets:31682 errors:0 dropped:0 overruns:0 frame:0
|
||||
TX packets:27573 errors:0 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:1000
|
||||
RX bytes:29637117 (29.6 MB) TX bytes:4590583 (4.5 MB)
|
||||
Interrupt:18 Memory:da000000-da020000
|
||||
|
||||
lo Link encap:Local Loopback
|
||||
inet addr:127.0.0.1 Mask:255.0.0.0
|
||||
inet6 addr: ::1/128 Scope:Host
|
||||
UP LOOPBACK RUNNING MTU:65536 Metric:1
|
||||
RX packets:2921 errors:0 dropped:0 overruns:0 frame:0
|
||||
TX packets:2921 errors:0 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:0
|
||||
RX bytes:305297 (305.2 KB) TX bytes:305297 (305.2 KB)
|
||||
|
||||
The above output is similar to the output shown by the ifconfig command.
|
||||
|
||||
### 9. Get netstat output continuously ###
|
||||
|
||||
Netstat can output connection information continuously with the c option.
|
||||
|
||||
$ netstat -ct
|
||||
|
||||
The above command will output tcp connections continuously.
|
||||
|
||||
### 10. Display multicast group information ###
|
||||
|
||||
The g option will display the multicast group information for IPv4 and IPv6 protocols.
|
||||
|
||||
$ netstat -g
|
||||
IPv6/IPv4 Group Memberships
|
||||
Interface RefCnt Group
|
||||
--------------- ------ ---------------------
|
||||
lo 1 all-systems.mcast.net
|
||||
eth0 1 224.0.0.251
|
||||
eth0 1 all-systems.mcast.net
|
||||
lo 1 ip6-allnodes
|
||||
lo 1 ff01::1
|
||||
eth0 1 ff02::fb
|
||||
eth0 1 ff02::1:fff8:b264
|
||||
eth0 1 ip6-allnodes
|
||||
eth0 1 ff01::1
|
||||
wlan0 1 ip6-allnodes
|
||||
wlan0 1 ff01::1
|
||||
|
||||
### More examples of netstat command ###
|
||||
|
||||
Okay, we covered the basic examples of netstat command above. Now its time to do some geek stuff with style.
|
||||
|
||||
### Print active connections ###
|
||||
|
||||
Active socket connections are in "ESTABLISHED" state. So to get all current active connections use netstat with grep as follows
|
||||
|
||||
$ netstat -atnp | grep ESTA
|
||||
(Not all processes could be identified, non-owned process info
|
||||
will not be shown, you would have to be root to see it all.)
|
||||
tcp 0 0 192.168.1.2:49156 173.255.230.5:80 ESTABLISHED 1691/chrome
|
||||
tcp 0 0 192.168.1.2:33324 173.194.36.117:443 ESTABLISHED 1691/chrome
|
||||
|
||||
To watch a continous list of active connections, use the watch command along with netstat and grep
|
||||
|
||||
$ watch -d -n0 "netstat -atnp | grep ESTA"
|
||||
|
||||
### Check if a service is running ###
|
||||
|
||||
If you want to check if a server like http,smtp or ntp is running or not, use grep again.
|
||||
|
||||
$ sudo netstat -aple | grep ntp
|
||||
udp 0 0 enlightened.local:ntp *:* root 17430 1789/ntpd
|
||||
udp 0 0 localhost:ntp *:* root 17429 1789/ntpd
|
||||
udp 0 0 *:ntp *:* root 17422 1789/ntpd
|
||||
udp6 0 0 fe80::216:36ff:fef8:ntp [::]:* root 17432 1789/ntpd
|
||||
udp6 0 0 ip6-localhost:ntp [::]:* root 17431 1789/ntpd
|
||||
udp6 0 0 [::]:ntp [::]:* root 17423 1789/ntpd
|
||||
unix 2 [ ] DGRAM 17418 1789/ntpd
|
||||
|
||||
So we found that ntp server is running. Grep for http or smtp or whatever you are looking for.
|
||||
|
||||
Well, that was most of what netstat is used for. If you are looking for more advanced information or want to dig deeper, read up the netstat manual (man netstat).
|
||||
|
||||
And do leave your feedback and suggestions in the comments box below.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.binarytides.com/linux-netstat-command-examples/
|
||||
|
||||
译者:[FingerLiu](https://github.com/FingerLiu) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
79
sources/Apache OpenOffice vs. LibreOffice.md
Normal file
79
sources/Apache OpenOffice vs. LibreOffice.md
Normal file
@ -0,0 +1,79 @@
|
||||
Apache OpenOffice vs. LibreOffice
|
||||
================================================================================
|
||||
> The two open source office productivity suites are similar, yet one appears to have a slight advantage.
|
||||
|
||||
[Apache OpenOffice][1] and [LibreOffice][2] are the modern descendants of OpenOffice.org. For the last few years, almost all Linux distributions have included LibreOffice as their default office suite. However, in the past eighteen months, OpenOffice has reappeared, newly organized into an Apache project, and free software users now have the choice of two full-featured suites instead of one.
|
||||
|
||||
Users also have the difficulty of deciding between two almost-identical choices. The two diverged three years ago, and while that can be a long period in software development, in this case, the differences are only starting to become obvious. While considerable cleanup has gone on behind the scenes, the feature sets and underlying logic in both has mutated in only minor ways from the days of OpenOffice.org.
|
||||
|
||||
Here and there, you can find new features in the individual applications, especially in the Writer word processor. However, most of the differences are at a higher level, in support for formats and fonts, the policy towards extensions, and, most of all, in the efforts to modernize and standardize the interface.
|
||||
|
||||
### Differences in the Apps ###
|
||||
|
||||
Most of the features in LibreOffice's and OpenOffice's applications are the same. In Draw, there appear to be no difference at all. In Impress, the main difference is that LibreOffice's latest release includes support for controlling a slide show from an Android device. And although the selection of slide backgrounds differs between the two, either selection should be adequate unless you are looking for a favorite. Similarly, the greatest difference between the two versions of the Calc spreadsheet is that, in LibreOffice's, you can create data forms.
|
||||
|
||||
Even in Writer, the most popular application, the differences are generally in a minor key. In LibreOffice, the status bar at the bottom of the editing window now includes a word and character count. In addition, LibreOffice's comments can be anchored to paragraphs rather than a single point, and, in a correction of a longstanding bug, in footnotes now display besides the text to which they refer. LibreOffice also adds a simplified Find field, similar to one in a web browser, while omitting the option to insert a graphical horizontal line -- a feature that few must have used for the last decade or more.
|
||||
|
||||
### Formats and Fonts ###
|
||||
|
||||
Some of the more noticeable differences fall under the category of format and font support. For instance, OpenOffice continues to support saving to formats that have gone out of fashion, such as AportisDoc (Palm) and Pocket Word. It can open .docx files, but, unlike LibreOffice, not save to it.
|
||||
|
||||
LibreOffice also has the advantage in font support. The latest version supports OpenType, the preferred format for modern fonts because of its support for multiple languages and advanced typography. Even more importantly, by going to File -> Properties -> Fonts, you can embed fonts into the document, eliminating with a single click the need to ensure font compatibility.
|
||||
|
||||
Such features give LibreOffice a decided edge when exchanging files with Microsoft Office users. In general, neither OpenOffice nor LibreOffice interact best with Microsoft formats when a document is mostly text and contains a minimum of tables, draw objects, and complex formatting. In both, for example, you are best off sharing something like a brochure in .PDF format rather than the native Open Document Format.
|
||||
|
||||
However, if you do exchange native and Microsoft formats, LibreOffice has some decided advantages. Not only does it both read and write to recent Microsoft formats, but its advantages in font handling removes any need for font subsitution -- a major cause of problems when exchanging files. While other problems remain, such as differences in feature implementation, LibreOffice should generally be the more reliable handler of Microsoft Office files.
|
||||
|
||||
### Extension Policies ###
|
||||
|
||||
Both OpenOffice and LibreOffice support well-rounded collections of extensions that can be downloaded and added in minutes to enhance or alter features. In most cases, an extension that works with one will work with the other.
|
||||
|
||||
The difference is that, with LibreOffice, you don't have to install the most popular extensions. Instead, LibreOffice installs with them already enabled or integrated. These extensions include Lightproof, a basic grammar checker; Report Builder for summarizing and printing from data bases; Presentation Minimizer for reducing the size of presentations; Wiki Publisher for blogging, and Presentation Console for delivering slide shows, as well as a number of others.
|
||||
|
||||
All these extensions are available for OpenOffice as well. The difference is that, with OpenOffice, you need to know about them and deliberately find them. Effectively, this limitation makes a number of features unavailable to new users. When OpenOffice (and LibreOffice) have made such efforts in recent releases to provide useful modern templates and clip art, this omission is a crippling oversight, especially when it is so easily corrected.
|
||||
|
||||
### Interfaces in Transition ###
|
||||
|
||||
In the twelve years that Sun Microsystems and Oracle have owned the OpenOffice.org code, the interface, like so many features, was almost entirely neglected. The result is that today, both OpenOffice and LibreOffice are suites with a healthy set of features, but interfaces that are generally stuck in the mid-1990s. Some superficial aspects have been removed, but far more remains to be updated.
|
||||
|
||||
In the latest release, OpenOffice's efforts to overhaul the interface have been restricted largely to the sidebar, an feature that has to be specifically enabled in LibreOffice from Tools -> Options -> LibreOffice -> Advance, and is labeled as "experimental."
|
||||
|
||||
The sidebar is a collection of features, primarily for manual formatting. Since this use comes at the expense of encouraging the use of styles, as the logic of the code intends, it is easy to dismiss. However, at its best, the sidebar is an immense simplification of some of the tabs for formatting characters and paragraphs, such as the Border tab in all applications, and the Format tab for spreadsheet cells. With luck, its re-conceptualization of controls will eventually find its way to the menus and style dialogue windows.
|
||||
|
||||
LibreOffice has been even more adventuresome. For example, the task pane in Impress, while similar to the sidebar, summarizes most of the steps in slide design in the names of its tabs.
|
||||
|
||||
But it is the Writer editing window where most of LibreOffice's interface improvements have taken place. A word and character count has been added to the status bar at the bottom of the window, and the cramped sub-menus for managing and editing templates have been replaced with a stream-lined interface in which buttons replace drop-down menus.
|
||||
|
||||
Even more obvious, the main text frame has been reduced in LibreOffice to cross-hairs at the four corners. In the same way, headers and footers are invisible until you click where they should be, when four small right angles indicate their borders.
|
||||
|
||||
A less successful effort is a tab in LibreOffice's editing window for managing headers and footers. Aside from the fact that the tab encourages manual formatting, it has the annoying habit of hiding part of the first line of a new page as it is typed.
|
||||
|
||||
These efforts are far from complete, although LibreOffice has also rearranged options in a number of dialogue windows. At times, they make LibreOffice a disconcerting mixture of vintage interfaces and modern minimalism that can be disconcerting to move between. However, at least LibreOffice is trying to address the long-delayed problem of the interfaces -- something OpenOffice has not had much time to consider.
|
||||
|
||||
### Making a Choice ###
|
||||
|
||||
An average user, whose documents are rarely longer than two or three pages, would often have to check the title bar to be sure whether they were using LibreOffice or OpenOffice. However, depending on their needs, advanced users will probably find LibreOffice currently has a small, but definite advantage.
|
||||
|
||||
This advantage is hardly to be unexpected. For one thing, LibreOffice had many months to advance while OpenOffice was concerned with setting up governance and doing a code audit. These tasks might be useful and necessary, but they do not make for improvements in the code that ordinary users are likely to notice.
|
||||
|
||||
For another, the LibreOffice fork was begun largely by members of [Go-oo][3], an unofficial fork of OpenOffice.org that wanted to accelerate change. While Apache OpenOffice was forming, LibreOffice attracted talent around the world who wanted to code and were excited by the idea that everything was suddenly up for reconsideration.
|
||||
|
||||
Nobody has any done a census, but my impression is that when the OpenOffice.org community divided, the more adventurous contributors chose to focus on LibreOffice, although a few, such as the semi-independent documentation team, deliberately work for both projects.
|
||||
|
||||
However, the most important advantage for LibreOffice is what might be called the license-drain. That is, while the Apache License is compatible with LibreOffice's Lesser GNU General Public License, the Less GNU General Public License is incompatible with the Apache License. In other words, while LibreOffice can borrow code freely from OpenOffice, OpenOffice cannot borrow at all from LibreOffice. Strictly speaking, it must do clean-room implementations of features it wants to borrow from LibreOffice.
|
||||
|
||||
This situation may change, especially since Apache OpenOffice enjoys enormous name recognition compared to LibreOffice. Yet LibreOffice has quickly earned widespread support and has an active community that has done more in three years than OpenOffice.org managed in twelve.
|
||||
|
||||
For now, whether you use Apache OpenOffice or LibreOffice is likely to make very little difference unless you need a particular feature. However, I suspect that, unless something unexpected happens, LibreOffice's slight advantage is only going to widen. Whichever you decide on, you may want to schedule a re-evaluation in a few years' time.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.datamation.com/applications/apache-openoffice-vs.-libreoffice-1.html
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.openoffice.org/
|
||||
[2]:http://www.libreoffice.org/
|
||||
[3]:https://en.wikipedia.org/wiki/Go-oo
|
@ -0,0 +1,41 @@
|
||||
Daily Ubuntu Tips – Change Samba Workgroup And Computer Name
|
||||
================================================================================
|
||||
Here’s another question new users to Ubuntu asked the most. The answer to the question is simple but when you’re new to anything, it takes time to fully understand it.
|
||||
|
||||
Here’s the question we received few days ago;
|
||||
|
||||
> How to change samba workgroup name and computer name in Ubuntu?
|
||||
|
||||
For most computer Ubuntu users, changing their computer name is the least thing on their list, let alone samba workgroup. A few power users may want to learn how to do this easily with using Ubuntu.
|
||||
|
||||
When it comes to changing the computer name in Ubuntu, we’ve written a simple post on that which can be [found here][1]. Follow the this simple guide on [changing your computer name in Ubuntu][1] to accomplish your goal.
|
||||
|
||||
There maybe other ways to changing your PC name in Ubuntu but this is the easiest and fastest. For those using Ubuntu server, you can use vi or vim to edit the hostname and hosts files. Using vi or vim maybe difficult for most so only someone with knowledge of using these editors should use it.
|
||||
|
||||
To change Samba workgroup in Ubuntu, press **Ctrl – Alt – T** on your keyboard to open the terminal. When it opens, run the commands below to edit Samba’s configure file.
|
||||
|
||||
sudo gedit /etc/samba/smb.conf
|
||||
|
||||
When the file opens, make sure the line starting with workgroup in the [global] section has the word or value you want the workgroup to be. For example, if you want the workgroup to be UBGP, replace WORKGROUP with that and save the file. In most cases, you’ll have to restart the computer for the change to apply.
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/11/workgroupubuntu.png)
|
||||
|
||||
This is how you change your computer name as well as its workgroup in Ubuntu. Remember, if you are doing this to share or access Windows files and folders, you must also install Samba. Without Samba, it would be difficult sharing files with Windows.
|
||||
|
||||
To install Samba, run the commands below.
|
||||
|
||||
sudo apt-get install samba
|
||||
|
||||
Please come back and check out other future tips about Ubuntu.
|
||||
|
||||
Enjoy!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-change-samba-workgroup-and-computer-name/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.liberiangeek.net/2013/10/daily-ubuntu-tips-change-computer-name/
|
@ -0,0 +1,45 @@
|
||||
Daily Ubuntu Tips – Get Geary, A Lightweight Email Reader In Ubuntu
|
||||
================================================================================
|
||||
As you may already know, Ubuntu comes with its own email client called Thunderbird that allows you to setup email accounts to send and receive emails. It also support IMAP protocol which services like Gmail, Yahoo Mail and Microsoft Outlook support.
|
||||
|
||||
Thunderbird is a great email client and does everything an email client supposed to do, but if you’re looking for an alternative that is lightweight and built around GNOME, then you may want to try Geary.
|
||||
|
||||
Geary is a free email program that lets you quickly and effortlessly read emails with a simple interface based around conversations. The entire discuss is read from a single pane without you having to click from one message to another.
|
||||
|
||||
Geary also support IMAP protocol which will let you send and receive emails using your online webmail accounts from Google, Yahoo and Microsoft.
|
||||
|
||||
For users with Ubuntu 13.10, Geary is already available from Ubuntu Software Center. All they have to do is run the commands below to install Geary.
|
||||
|
||||
sudo apt-get install geary
|
||||
|
||||
For previous versions of Ubuntu, press **Ctrl – Alt – T** on your keyboard to open the terminal. When opens, run the commands below to add its PPA repository.
|
||||
|
||||
sudo add-apt-repository ppa:yorba/ppa
|
||||
|
||||
Next, run the commands below to update your system and install Geary.
|
||||
|
||||
sudo apt-get update && sudo apt-get install geary
|
||||
|
||||
When you launch Geary the first time, it wants you to setup email accounts from Gmail, Yahoo or Microsoft.
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/11/gearyubuntu.png)
|
||||
|
||||
The setup is pretty easy, just enter your account info and Geary will attempt to automatically configure your account.
|
||||
|
||||
To uninstall Geary, first remove its PPA repository from your system by running the commands below.
|
||||
|
||||
sudo add-apt-repository -r ppa:yorba/ppa
|
||||
|
||||
Then run the commands below to remove Geary.
|
||||
|
||||
sudo apt-get remove geary
|
||||
|
||||
That’s it.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-get-geary-a-lightweight-email-reader-in-ubuntu/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,35 +0,0 @@
|
||||
【SCUSJS占坑】Daily Ubuntu Tips–Update To LibreOffice Latest In Ubuntu Via PPA
|
||||
================================================================================
|
||||
For every new Ubuntu you install, you’ll also have LibreOffice, the office productivity tool that allows you to create and manage documents. Most people are aware of Microsoft Word, Excel, PowerPoint and Outlook but few know about LibreOffice.
|
||||
|
||||
LibreOffice is made available by volunteers around the world and is backed by a charitable foundation. It is the primary office productivity tool in the Linux community and it’s free. It can be installed on Windows, Mac OS X and Linux computers.
|
||||
|
||||
Just today, a new release was made available to the public. Windows, Mac OS X and Linux users can go directly to the download page and download the latest release.
|
||||
|
||||
An advantage Ubuntu users have is they can add LibreOffice’s software repository to your their computer to install the latest releases. This is useful if you wish to quickly get every latest release when it’s made available.
|
||||
|
||||
The current release family of LibreOffice is 4.1. Every subsequent release will be available instantly in the 4.1 repository until a new mainline is launched which maybe version 4.2.
|
||||
|
||||
So, to always upgrade automatically in Ubuntu, add the software repository below.
|
||||
|
||||
sudo add-apt-repository ppa:libreoffice/ppa
|
||||
|
||||
Next, run the commands below to upgrade to the latest version LibreOffice.
|
||||
|
||||
sudo apt-get update && sudo apt-get dist-upgrade
|
||||
|
||||
That’s it. When you add the repository above and update your system, Ubuntu will automatically download and install LibreOffice latest releases.
|
||||
|
||||
Windows and Mac OS X users may upgrade directly from within the program suite or download it directly from the web.
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/11/libreoffice-upgrade-ubuntu.png)
|
||||
|
||||
Enjoy!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tipsupdate-to-libreoffice-latest-in-ubuntu-via-ppa/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
32
sources/Deciphering Top.md
Normal file
32
sources/Deciphering Top.md
Normal file
@ -0,0 +1,32 @@
|
||||
Deciphering Top
|
||||
================================================================================
|
||||
When curious about the performance of a server, one of the first places I stop is "top". Top is not perfect, not by a long shot, but it does provide a decent point in time snapshot of the server, and attempts to answer the question of "what is going on right now?". Unfortunatly, the output of top can easily be misinterpreted if you do not have a good understanding of the different fields of data presented.
|
||||
|
||||
I'm not going to go through the [man page][2] for top, when you have the time and inclination it is always there waiting for you. What I would like to do is point out a few highlights of how I use it to get a quick overview of the system and hopefully get a direction I should go next. Top is often my first stop in troubleshooting, but it is rarely my only stop.
|
||||
|
||||
[![](http://farm4.staticflickr.com/3827/10847969205_c1b75f9fa2_m.jpg)][1]
|
||||
|
||||
The very first thing I look at in top is the load average, in the top right hand corner of the screen. The load average is computed based on a number of statistics gathered, but can generally be thought of as the amount of work the CPU is being asked to do. If your machine has a single CPU core, than a load average of one would mean that the machine was perfectly loaded and had sufficient power to accomplish all tasks during the time it was sampled. Likewise, if the load average is two, the single CPU machine was overloaded, and would have needed two available cores to accomplish the work it was being asked to do in the same amount of time. With todays 8, 16, and 32 core servers shipping, I need to think twice when considering the load average. If I need to check, I press "1" in top, which will drop down a list of all CPU cores so I can get a quick count for comparison.
|
||||
|
||||
The second item I check is the first process listed, and the ninth column over, labled "%CPU". The explanation for this column is novel:
|
||||
|
||||
> The task's share of the elapsed CPU time since the last screen update, expressed as a percentage of total CPU time. In a true SMP environment, if 'Irix mode' is Off, top will operate in 'Solaris mode' where a task's cpu usage will be divided by the total number of CPUs. You toggle 'Irix/Solaris' modes with the 'I' interactive command.
|
||||
|
||||
Clear as mud, right? The main idea to keep in mind is that if a single process has gone berzerk for one reason or antoher, it will probably show up listed first in top, with a rather extreme number for %CPU.
|
||||
|
||||
The next area I glance at is the "Cpu(s):" line, in the center of the header block. Specifically, I'm interested in the %us, which is user processes, %sy, for system processes, %id, which is idle time, and %wa, which is the percent of time the CPU had processes that were waiting on a response from an I/O stream to execute. This percentage should always be close to zero, and anything higher than 5% should be looked at closer.
|
||||
|
||||
Lastly, I like to check the system up time, shown in the top left hand corner. If I'm having problems with a server, and the server was recently rebooted, there may be a correlation there, perhaps a daemon that didn't start.
|
||||
|
||||
All of these checks take only a few seconds. I may leave top running for a few minutes and watch the processes, CPU, and load if I'm just observing, but normally I'm in and out of top fairly quickly. Top is one of those fantastic sysadmin tools that is built to give you a quick overview of the health of your system, and allow you to quickly diagnose potential problems.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://ostatic.com/blog/deciphering-top
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.flickr.com/photos/51724787@N06/10847969205/
|
||||
[2]:http://www.linuxmanpages.com/man1/top.1.php
|
67
sources/Five Examples Of The ping Utility.md
Normal file
67
sources/Five Examples Of The ping Utility.md
Normal file
@ -0,0 +1,67 @@
|
||||
Five Examples Of The ping Utility
|
||||
================================================================================
|
||||
### What is ping Utility? ###
|
||||
|
||||
Before going through some real world examples of the ping utility, let me explain what this commandline tool is and its purpose. The ping utility is used to test the reachability of a host on an Internet Protocol (IP) network. Its names comes from the active sonar method which is used to create a pulse of sound (ping) under the water and listening to echo requests from surrounding objects. This method is the best way to explain how the network ping utility works. The ping utility sends echo requests to a host and waits for an ICMP response.
|
||||
|
||||
Some Examples Of The ping Utility In Practice:
|
||||
|
||||
### Find Out The Ip Address Of A Host ###
|
||||
|
||||
Sometimes you need the ip address of a host, you can use the ping tool like shown in Figure 1. Just type the ping command and after it type the hostname.
|
||||
|
||||
ping www.omgubuntu.com
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/ping1.png)
|
||||
|
||||
### Find Out The Version Of The ping Utility You Are Using ###
|
||||
|
||||
The -V flag can be used to find out which version of the ping tool you have. Type the following command and it will display the current version of the ping utility.
|
||||
|
||||
ping -V
|
||||
|
||||
As you can see from Figure 2, I am using ping utility, iputils-sss20101006.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/ping2.png)
|
||||
|
||||
### Exit Pinging ###
|
||||
|
||||
When you ping a machine with the ‘ping host’ command, pinging doesn’t stop and you have to pres CTRL+C to stop it, or you can use the -c (count) option to send a specified number of packets. When using the -c option, after the number of packets specified by the network admin (user whatever) is sent, the pinging process stops automatically instead of pressing CTRL+C.
|
||||
|
||||
ping -c 13 127.0.0.1
|
||||
|
||||
The above command is used to send 13 packets to my localhost.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/ping3.png)
|
||||
|
||||
As you can see from Figure 3 i did not press CTRL+C to exit pinging,it stopped automatically.
|
||||
|
||||
### Specify The Interval Between Packets ###
|
||||
|
||||
Did you know that ping sends a packet every second? Do you like to speed up or slow down? The -i option can be used to specify the interval between packets. Use the following commands to send packets very fast or very slow.
|
||||
|
||||
### Send A Packet Every 0.13 Seconds ###
|
||||
|
||||
ping -i 0.13
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/ping4.png)
|
||||
|
||||
### Send A Packet Every 13 Seconds ###
|
||||
|
||||
ping -i 13
|
||||
|
||||
### Combine the -i option with -c option ###
|
||||
|
||||
ping -c 13 -i 3
|
||||
|
||||
It will take 39 seconds to send 13 packets with the specified interval of 3 seconds.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/ping6.png)
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/five-examples-ping-utility/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,41 +0,0 @@
|
||||
translating by coolpigs
|
||||
|
||||
How to Install Linux Kernel 3.12 in Ubuntu 13.10
|
||||
================================================================================
|
||||
**Ubuntu 13.10 users don't have to look with envy at the new Linux kernels that are released, and they can update their systems with relative ease.**
|
||||
|
||||
Canonical is usually sticking with one Linux kernel for an entire development cycle. For example, Ubuntu 13.10 is based on Linux kernel 3.11, but now a new stable Linux kernel, 3.12, has been launched.
|
||||
|
||||
Ubuntu users will have to wait until the release of the 14.04 LTS to get a newer Linux kernel, but they can also install, until then, new versions.
|
||||
|
||||
We have to warn you from the get-go. Canonical does not recommend updating your Linux kernel to other versions than the ones provided on official channels. This is not a totally safe procedure and you might have problems afterwards, even system failures. On the other hand, you might get better performance from your system.
|
||||
|
||||
The kernel you are about to download is from Canonical, which means that it is already in a .deb format. You won't have to compile it yourself. Open a terminal, navigate to the Downloads folder, and enter the following commands:
|
||||
|
||||
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
You can also download the 32-bit version, if you have a 32-bit operating system. Just replace the 64-bit links with the ones for 32-bit, which can be found [here][1].
|
||||
|
||||
Now you will have to run those .deb, just like any other program. In the same terminal that you used to download the packages, write the following commands (you will need root access to make this work):
|
||||
|
||||
sudo dpkg -i linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
sudo dpkg -i linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
After the process is finished, you will have to restart the system and voila, the new Linux kernels are in place. The good news is that the old ones are still there and, if you need to delete 3.12, all you have to do is use a very well-known command.
|
||||
|
||||
sudo apt-get purge linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
sudo apt-get linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
One thing you have to remember. The names of the files shown above will change pretty soon. If the downloads are not working, you will have to update the new links. Enjoy Linux kernel 3.12!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Install-Linux-Kerrnel-3-12-in-Ubuntu-13-10-397013.shtml
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/
|
@ -1,108 +0,0 @@
|
||||
(正在翻译 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/
|
@ -1,3 +1,4 @@
|
||||
[Being translated by bazz2]
|
||||
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.
|
||||
@ -90,4 +91,4 @@ via: http://www.linux.com/learn/tutorials/745233-how-to-set-up-secure-remote-net
|
||||
|
||||
[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
|
||||
[3]:http://10.0.0.1/owncloud
|
||||
|
@ -1,39 +0,0 @@
|
||||
Vic020认领了
|
||||
How to add icons to menus in Ubuntu 13.10
|
||||
================================================================================
|
||||
By default, using Ubuntu 13.10, the user is met by an optimized set of default applications, behaviors and functionalities, defaults empowering the user in digesting a powerful solid computer experience.
|
||||
|
||||
Ubuntu expresses its features as tweakable, as a consequence, users are able to modify and adjust the defaults with the help of intuitive user-friendly tools, such as Ubuntu Tweak.
|
||||
|
||||
By default, Ubuntu disables the icons from inside menus, meaning, right-clicking on the desktop, opens the right-click menu, menu containing only text entries and no icons.
|
||||
|
||||
Yet, adding icons to menus in Ubuntu 13.10 is as simple as:
|
||||
|
||||
- install Ubuntu Tweak
|
||||
|
||||
sudo add-apt-repository ppa:tualatrix/ppa
|
||||
|
||||
sudo apt-get update
|
||||
|
||||
sudo apt-get install ubuntu-tweak
|
||||
|
||||
- launch Ubuntu Tweak and navigate to `Tweaks-->Miscellaneous`
|
||||
- check `Menus have icons`
|
||||
|
||||
The **result**: right-clicking now on the desktop, renders icons inside the menu, icon-enablement feature adopted by other right-click menus, too (like for example, the menus from inside Nautilus, Firefox, Gedit, etc).
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/menu%20icon%203%20ubuntu%2013.10.png)
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/menu%20icons%20ubuntu%2013.10%201.png)
|
||||
|
||||
![](http://iloveubuntu.net/pictures_me/menu%20icons%20ubuntu%2013.10%202.png)
|
||||
|
||||
While minor, the newly-added icons imprint more clarity and beauty into the frequently-used right-click menus, increasing their level of good looks, especially when the menus are icon-enabled under icon themes featuring monochrome icons.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://iloveubuntu.net/how-add-icons-menus-ubuntu-1310
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,56 +0,0 @@
|
||||
|
||||
**【晨光】翻译中**
|
||||
|
||||
How to add kernel boot parameters via GRUB on Linux
|
||||
================================================================================
|
||||
The Linux kernel can be supplied with various parameters during boot time or at run time. These parameters customize the default behavior of the kernel, or inform the kernel about hardware configuration. Kernel parameters can be changed at run time by modifying files in /proc or /sys, while certain kernel parameters need be passed to the kernel at boot time by a boot loader such as GRUB or LILO.
|
||||
|
||||
In this tutorial, I will describe **how to add kernel boot parameters via GRUB on Linux**.
|
||||
|
||||
If you want to change or add kernel parameters when you are using GRUB boot loader, you can edit GRUB config file. The following are distro-specific ways to add kernel boot parameters to a GRUB config file.
|
||||
|
||||
### Add Kernel Boot Parameters on Debian or Ubuntu ###
|
||||
|
||||
If you want to add kernel parameters during boot time on a Debian based system, edit GRUB config template at /etc/default/grub. Add a kernel parameter in the form of “name=value” in GRUB_CMDLINE_LINUX_DEFAULT variable.
|
||||
|
||||
$ sudo -e /etc/default/grub
|
||||
|
||||
> GRUB_CMDLINE_LINUX_DEFAULT="...... name=value"
|
||||
|
||||
Then run the following command to actually generate a GRUB config file.
|
||||
|
||||
$ sudo update-grub
|
||||
|
||||
If the command update-grub is not found, you can install it as follows.
|
||||
|
||||
$ sudo apt-get install grub2-common
|
||||
|
||||
### Add Kernel Boot Parameters on Fedora ###
|
||||
|
||||
To add kernel parameters during boot time on Fedora, edit GRUB config template at /etc/default/grub. Add a kernel parameter in the form of “name=value” in GRUB_CMDLINE_LINUX variable.
|
||||
|
||||
$ sudo -e /etc/default/grub
|
||||
|
||||
> GRUB_CMDLINE_LINUX="...... name=value"
|
||||
|
||||
Then run the following command to generate a GRUB2 config file.
|
||||
|
||||
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
|
||||
|
||||
### Add Kernel Boot Parameters on CentOS ###
|
||||
|
||||
To add kernel parameters during boot on CentOS, directly edit a GRUB config file located at /boot/grub/grub.conf. In the config file, look for the entry describing the default Linux image used. The string “default=N” at the top of the config file indicates which entry is the default image.
|
||||
|
||||
[![](http://farm8.staticflickr.com/7429/10618657834_8082c2806b_z.jpg)][1]
|
||||
|
||||
Under the default image entry, append a kernel parameter to the line starting with “kernel /vmlinuz-”. A kernel parameter should be formatted as “name=value”.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/add-kernel-boot-parameters-via-grub-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.flickr.com/photos/xmodulo/10618657834/
|
@ -0,0 +1,80 @@
|
||||
How to create desktop shortcut or launcher on Linux
|
||||
================================================================================
|
||||
If you have a program you use regularly on Linux desktop, you may want to create a "desktop shortcut", so you can launch the program by simply clicking on the shortcut. While most GUI programs automatically create their desktop shortcut during installation, some GUI programs or terminal applications may require you to set up associated shortcuts manually.
|
||||
|
||||
In this tutorial, I will describe **how to create a desktop shortcut or launcher on various Linux desktops**.
|
||||
|
||||
A desktop shortcut is represented by a corresponding .desktop file which contains meta information of a given app (e.g., name of the app, launch command, location of icon file, etc.). Desktop shortcut files are placed in **/usr/share/applications** or **~/.local/share/applications**. The former directory stores desktop shortcuts that are available for every user, while the latter folder contains shortcuts created for a particular user only.
|
||||
|
||||
### Create a Desktop Shortcut From the Command Line ###
|
||||
|
||||
To manually create a desktop shortcut for a particular program or command, you can create a .desktop file using any text editor, and place it in either /usr/share/applications or ~/.local/share/applications. A typical .desktop file looks like the following.
|
||||
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Version=1.0 # version of an app.
|
||||
Name[en_US]=yEd # name of an app.
|
||||
GenericName=GUI Port Scanner # longer name of an app.
|
||||
Exec=java -jar /opt/yed-3.11.1/yed.jar # command used to launch an app.
|
||||
Terminal=false # whether an app requires to be run in a terminal.
|
||||
Icon[en_US]=/opt/yed-3.11.1/icons/yicon32.png # location of icon file.
|
||||
Type=Application # type.
|
||||
Categories=Application;Network;Security; # categories in which this app should be listed.
|
||||
Comment[en_US]=yEd Graph Editor # comment which appears as a tooltip.
|
||||
|
||||
Besides manually create .desktop file, there are various desktop-specific ways to create an application shortcut, which I am going to cover in the rest of the tutorial.
|
||||
|
||||
### Create a Desktop Shortcut on GNOME Desktop ###
|
||||
|
||||
In GNOME desktop, you can use gnome-desktop-item-edit to configure a desktop shortcut easily.
|
||||
|
||||
$ gnome-desktop-item-edit ~/.local/share/applications --create-new
|
||||
|
||||
In this example, gnome-desktop-item-edit will automatically create a desktop launcher file in ~/.local/share/applications. To customize icon location and other info, you may have to edit the .desktop file manually afterward.
|
||||
|
||||
If gnome-desktop-item-edit is not available (e.g., on Ubuntu), you can install it as follows.
|
||||
|
||||
$ sudo apt-get install --no-install-recommends gnome-panel
|
||||
|
||||
### Create a Desktop Shortcut on KDE Desktop ###
|
||||
|
||||
kickoff is the default application launcher in KDE desktop. Adding a new application shortcut to kickoff is straightforward.
|
||||
|
||||
First right-click on kickoff icon located at the left bottom corner of your desktop, and then choose "Edit Applications" menu.
|
||||
|
||||
[![](http://farm3.staticflickr.com/2839/10848506344_7949638fe0.jpg)][1]
|
||||
|
||||
Click on an appropriate category (e.g., "Utilities") under which you want to create a shortcut, and click on "New Item" button on the top. Type in the name of the app.
|
||||
|
||||
[![](http://farm8.staticflickr.com/7459/10848418496_ac6de897fe_z.jpg)][2]
|
||||
|
||||
Finally, fill in the meta information of the app being launched by the shortcut.
|
||||
|
||||
[![](http://farm8.staticflickr.com/7347/10848506284_18c8d9234d_z.jpg)][3]
|
||||
|
||||
### Create a Desktop Shortcut on Xfce Desktop ###
|
||||
|
||||
If you are on Xfce desktop, right-click on the desktop background, and then select "Create Launcher" menu. Then fill out the details of the shortcut.
|
||||
|
||||
### Create a Desktop Shortcut on Cinnamon Desktop ###
|
||||
|
||||
If you are on Linux Mint Cinnamon desktop, you can create an application launcher by right-clicking on the desktop background, and selecting "Create Launcher" menu.
|
||||
|
||||
### Create a Desktop Shortcut on LXDE Desktop ###
|
||||
|
||||
On LXDE desktop, simply right click on the desktop background, and choose "Create New Shortcut".
|
||||
|
||||
[![](http://farm4.staticflickr.com/3725/10848922593_441ed98174.jpg)][4]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/create-desktop-shortcut-launcher-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.flickr.com/photos/xmodulo/10848506344/
|
||||
[2]:http://www.flickr.com/photos/xmodulo/10848418496/
|
||||
[3]:http://www.flickr.com/photos/xmodulo/10848506284/
|
||||
[4]:http://www.flickr.com/photos/xmodulo/10848922593/
|
@ -1,98 +0,0 @@
|
||||
How to monitor system temperature on Linux
|
||||
================================================================================
|
||||
In most cases, you are not supposed to be worried about the temperature of your computer. Barring manufacturing defects, hardware is designed so that its temperature does not exceed maximum operating temperature. But even without any hardware fault, overheating can occur due to various software issues, e.g., buggy graphics card driver, misconfigured fan control program, malfunctioning CPU frequency scaling daemon, etc.
|
||||
|
||||
Overheating may become serious enough to cause permanent damage on your hardware. So watch out for any overheating issue in your system. Even better, have temperature monitoring system in place, so that you will be alerted if system temperature suddenly goes up.
|
||||
|
||||
In this tutorial, I will describe **how to monitor system temperature on Linux**.
|
||||
|
||||
There are several user space tools on Linux, which allow you to check and monitor temperature of various system components.
|
||||
|
||||
[lm-sensors][1] is a software tool that draws from hardware embedded sensors to monitor temperatures, voltage, humidity and fans. [hddtemp][2] is a tool that can measure the temperature of hard drives from [S.M.A.R.T.][3] readings. [psensor][4] is a graphical front-end for temperature monitoring, which visualizes temperature readings from CPUs, NVidia/ATI/AMD GPUs, hard disks, etc.
|
||||
|
||||
In the following, I will describe how to set up psensor to monitor the temperature of CPUs and hard drives.
|
||||
|
||||
### Install psensor on Linux Desktop ###
|
||||
|
||||
psensor can visualize system temperature based on the information obtained from other tools such as lm-sensors and hddtemp. Thus you need to install psensor along with those prerequisites.
|
||||
|
||||
To install psensor on Debian or Ubuntu:
|
||||
|
||||
$ sudo apt-get install lm-sensors hddtemp psensor
|
||||
|
||||
To install psensor on Fedora:
|
||||
|
||||
$ sudo yum install lm_sensors hddtemp
|
||||
$ sudo yum install gcc gtk3-devel GConf2-devel lm_sensors-devel cppcheck libatasmart-devel libcurl-devel json-c-devel libmicrohttpd-devel help2man libnotify-devel libgtop2-devel make
|
||||
$ wget http://wpitchoune.net/psensor/files/psensor-0.8.0.3.tar.gz
|
||||
$ tar xvfvz psensor-0.8.0.3.tar.gz
|
||||
$ cd psensor-0.8.0.3
|
||||
$ ./configure
|
||||
$ make
|
||||
$ sudo make install
|
||||
|
||||
Due to the requirement for GTK3 libraries, psensor is not compatible with the GNOME 2 desktop of CentOS or RHEL 6.
|
||||
|
||||
### Configure psensor on Linux ###
|
||||
|
||||
Before launching psensor, you need to configure lm_sensors and hddtemp first.
|
||||
|
||||
#### lm_sensors configuration ####
|
||||
|
||||
To configure lm_sensors, run the following command. Choose YES to every question.
|
||||
|
||||
$ sudo sensors-detect
|
||||
|
||||
This command will probe for and detect embedded sensors in your hardware (including CPUs, memory controllers, I/O chips), and automatically determine which driver modules need to be loaded to check temperature on your system.
|
||||
|
||||
Once sensor probing is completed, you will be asked to add detected driver module(s) to /etc configuration, so they can be loaded automatically upon boot.
|
||||
|
||||
On Debian or Ubuntu, detected driver modules will be added to /etc/modules. On Fedora, the driver information will be added to /etc/sysconfig/lm_sensors.
|
||||
|
||||
Next, proceed to load necessary modules as follows.
|
||||
|
||||
On Ubuntu:
|
||||
|
||||
$ sudo service module-init-tools start
|
||||
|
||||
On Debian:
|
||||
|
||||
$ sudo /etc/init.d/kmod start
|
||||
|
||||
On Fedora:
|
||||
|
||||
$ sudo service lm_sensors start
|
||||
|
||||
#### hddtemp configuration ####
|
||||
|
||||
You also need to launch hddtemp which monitors the temperature of hard drives.
|
||||
|
||||
Run the following command to launch hddtemp as a daemon. Replace “/dev/sda” with the disk drive to monitor on your system.
|
||||
|
||||
$ sudo hddtemp -d /dev/sda
|
||||
|
||||
### Monitor System Temperature with psensor ###
|
||||
|
||||
To start monitoring temperature with psensor, simply run:
|
||||
|
||||
$ psensor
|
||||
|
||||
The psensor window will show a list of available sensors, and visualize temperature readings from these sensors. You can selectively enable or disable each sensor.
|
||||
|
||||
[![](http://farm8.staticflickr.com/7448/10719475225_f89b6f7191_z.jpg)][5]
|
||||
|
||||
Optionally, you can set an alarm level for each sensor, so that you can be notified when the temperature from a sensor exceeds a threshold.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/monitor-system-temperature-linux.html
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://lm-sensors.org/
|
||||
[2]:http://www.guzu.net/linux/hddtemp.php
|
||||
[3]:http://en.wikipedia.org/wiki/S.M.A.R.T.
|
||||
[4]:http://wpitchoune.net/blog/psensor/
|
||||
[5]:http://www.flickr.com/photos/xmodulo/10719475225/
|
@ -1,3 +1,4 @@
|
||||
这几天盖帽了 -.- Luox
|
||||
KDE and Canonical Conflict Over Mir Finally Bursts into Open
|
||||
================================================================================
|
||||
The conflict that has been brewing between the KDE developers and Canonical has finally exploded in a flurry of statements which show just how many problems the Mir display server has caused.
|
||||
@ -30,4 +31,4 @@ via: http://news.softpedia.com/news/KDE-and-Canonical-Conflict-Over-Mir-Finally-
|
||||
|
||||
[1]:http://news.softpedia.com/news/Mark-Shuttleworth-Says-That-Mir-Opponents-Have-Formed-the-Open-Source-Tea-Party-392793.shtml
|
||||
[2]:http://news.softpedia.com/news/KDE-Developer-and-President-of-KDE-e-v-Upset-Because-Mark-Shuttleworth-Is-Ignoring-Him-396623.shtml
|
||||
[3]:http://news.softpedia.com/news/Major-KDE-Developer-Says-Goodbye-to-Ubuntu-396429.shtml
|
||||
[3]:http://news.softpedia.com/news/Major-KDE-Developer-Says-Goodbye-to-Ubuntu-396429.shtml
|
||||
|
@ -1,108 +0,0 @@
|
||||
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/
|
@ -0,0 +1,30 @@
|
||||
Mark Shuttleworth Regrets the “Tea Party” Remarks and Other Canonical Mistakes
|
||||
================================================================================
|
||||
**Mark Shuttleworth, the founder of Canonical, has clarified his “Tea Party” comments and apologized for this rather personal remark.**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/Mark-Shuttleworth-Regrets-the-quot-Tea-Party-quot-Remarks-and-Other-Canonical-Mistakes-398819-2.jpg)
|
||||
|
||||
It's not every day that we see Mark Shuttleworth apologizing two times in a row, and most likely this is the first time that it happened.
|
||||
|
||||
[The first apology][1] came for the owner of fixubuntu.com, who was the recipient of a letter from the legal team of Canonical. Micah F. Lee, the guy behind the site, wrote an extensive blog post about these issues and the matter was discussed at length on a numerous forums and websites.
|
||||
|
||||
Mark Shuttleworth first apologized to him on Google+, but he also wrote a more formal text on his personal blog, which is usually reserved for things of great importance.
|
||||
|
||||
And since he was apologizing, he also took the time to say that he regretted [the “Tea Party”][2] comments that attracted a lot of heat towards Canonical, probably even more so than the original problems he was mad about.
|
||||
|
||||
“On another, more personal note, I made a mistake myself when I used the label ‘open source tea party’ to refer to the vocal non-technical critics of work that Canonical does. That was unnecessary and quite possibly equally offensive to members of the real Tea Party (hi there!) and the people with vocal non-technical criticism of work that Canonical does (hello there!).”
|
||||
|
||||
“There isn’t anything in what I said to suggest that I don’t welcome such technical feedback, but some assumed I was rejecting all feedback including technical commentary. I was not – I was talking about criticism of software which does not centre on the software itself, but rather on some combination of the motivations of the people who wrote it, or the particular free software license under which it is published, or the policies of the company, or the nationality of the company behind it,” said Mark Shuttleworth.
|
||||
|
||||
This will hopefully end all the discussions on the matter and people will finally be able to work together on Mir, which is actually the source of this whole debacle.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/Mark-Shuttleworth-Regrets-the-quot-Tea-Party-quot-Remarks-and-Other-Canonical-Mistakes-398819.shtml
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://news.softpedia.com/news/Mark-Shuttleworth-Apologizes-for-the-Trademark-Infringement-Letter-Sent-to-Fixubuntu-com-398583.shtml
|
||||
[2]:http://news.softpedia.com/news/Mark-Shuttleworth-Says-That-Mir-Opponents-Have-Formed-the-Open-Source-Tea-Party-392793.shtml
|
@ -1,35 +0,0 @@
|
||||
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
|
@ -0,0 +1,100 @@
|
||||
Outreach Program for Women Seeks New Linux Kernel Interns
|
||||
================================================================================
|
||||
The interns who worked with The Linux Foundation as part of the [FOSS Outreach Program for Women][1] this summer come from diverse backgrounds and levels of experience, but they now have at least one thing in common (besides their gender). They can all add “Linux kernel hacker” to their resume.
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/OPW-kernel-contributions-9.jpg)
|
||||
|
||||
*Outreach Program for Women ranked among the top contributors to Linux kernel 3.12. Source: LWN.net.*
|
||||
|
||||
Lisa Nguyen, Xenia Ragiadakou, Elena Ufimtseva, Laura Vasilescu and Tulin Izer were among the seven women out of 41 applicants who received $5,000 stipends each as part of the first group of OPW interns sponsored by the Linux Foundation. They worked full time with kernel developers at Intel, Oracle, and Citrix for three months and tackled projects that included the x86 boot process and vNUMA topolgy. They were also able to take advantage of a $500 travel scholarship to attend and speak at LinuxCon in New Orleans or Edinburgh.
|
||||
|
||||
“It's not often that I'd get to say, 'I volunteered at LinuxCon North America, spoke at LinuxCon North America, and met Linus Torvalds in three days!" said Nguyen, whose internship focused on Xen block drivers with Konrad Rzeszutek Wilk at Oracle.
|
||||
|
||||
In addition to learning how to build and submit kernel patches, making new friends and colleagues and generally conquering their fears, the interns made significant contributions to the Linux kernel.
|
||||
|
||||
“I'm not scared touching kernel code anymore,” said Izer, who worked with Peter P. Waskiewicz Jr. at Intel on parallelizing the x86 boot process. “This was my first contribution to an open source project and I'm really proud of it. I intend to keep doing this for a long time.”
|
||||
|
||||
### Top Kernel Contributors ###
|
||||
|
||||
As a group, OPW was listed as a top contributor to the 3.11 kernel, coming in No. 13 with 230 changesets submitted, according to the [August kernel report on LWN][2]. And intern Xenia Ragiadakou was among the top 10 most active developers contributing 100 changesets to 3.11.
|
||||
|
||||
“My main project was to add trace events and write a trace-cmd plugin for parsing the traces in human readable format to facilitate xhci (driver) debugging,” said Ragiadakou, who worked with Intel kernel developer Sarah Sharp on the project. “I learned how to use git, how to use static code analysis tools, how to send patches, how to tune my debug logs, how the usb subsystem is assembled, how xhci driver is implemented.”
|
||||
|
||||
On the 3.12 kernel, OPW again ranked among the top companies contributing, this time at No. 11 with 19,649 lines of code changed, [according to LWN's][3] analysis in October. That represents 2.7 percent of all changes made during this latest development cycle.
|
||||
|
||||
After their internships ended in September, most of the women have continued to work on the projects they started and plan to keep it up.
|
||||
|
||||
“I think it's cool to be a kernel contributor and I wanted to do this for some time,” said Vasilescu, who worked with Carolyn Wyborny and Anjali Singhai at Intel on features for ethtool in the igb driver.
|
||||
|
||||
“I still have to learn how to stop. Sometimes, oh well, often, I cannot stop,” said Ufimtseva, who worked on vNUMA topolgy for paravirtual guests in Xen with Stefano Stabellini, Dario Fargiolli and George Dunlap at Citrix. “I keep working and later it contributes into the quality of code. But it is so engaging!”
|
||||
|
||||
The deadline for the next round of Linux kernel internships is Nov. 11. Applicants should have some basic knowledge of C or C++ and boolean algebra. Some experience with operating systems, Linux/Unix, and Git is nice but not required. For more information on the available projects and how to apply, visit the [OPW page on Kernel Newbies][4].
|
||||
|
||||
### Lisa Nguyen ###
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/lisa-nguyen-kernel-intern-2.jpg)
|
||||
|
||||
**Lisa Nguyen worked on Xen block drivers with Konrad Rzeszutek Wilk at Oracle.**
|
||||
|
||||
I earned multiple college degrees in Computer Science, Digital Forensics, and Information Security before I became an OPW kernel intern. I have used Linux continuously for the past two years, and I have taken multiple roles in the Linux community including project manager, manpage author, LinuxCon session coordinator, and kernel contributor.
|
||||
|
||||
**Why did you apply to work on the Linux kernel with the OPW?**
|
||||
|
||||
I wanted a challenge and move out of my comfort zone. I wanted to give software development another chance, because I dealt with confidence issues in the past. One day, I decided that I wanted to pursue a career in Linux instead of becoming a digital forensics analyst. The timing couldn't have been better when I read about the OPW program through the Linux Foundation's post on Google+ and thought, "What do I have to lose if I don't try?"
|
||||
|
||||
### Elena Ufimtseva ###
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/elena-ufimtseva-kernel-intern.jpg)
|
||||
|
||||
**Elena Ufimtseva worked on vNUMA topolgy for paravirtual guests in Xen with Stefano Stabellini, Dario Fargiolli, George Dunlap at Citrix.**
|
||||
|
||||
I worked as a Linux system admin for quite some time and there were different projects I was a part of. I graduated with a Master Degree in Computer Science at St.-Petersburg University in Russian Federation.
|
||||
|
||||
**Why did you apply to work on the Linux kernel with the OPW?**
|
||||
|
||||
I felt I want to create software, system software, low-level. Not java :). I had that feeling that I can work on complex problems and solve them. I always check on latest Linux news and I think the one that truly caught my attention was Greg's presentation at Google a few years ago about Linux kernel development community organization and patches application process. I thought 'wow, that sounds great!'
|
||||
|
||||
### Laura Vasilescu ###
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/laura-vasilescu-kernel-intern-2.jpg)
|
||||
|
||||
**Laura Vasilescu worked with Carolyn Wyborny and Anjali Singhai on features for ethtool in the igb driver.**
|
||||
|
||||
I consider myself a geek and I have a huge interest for improving the education system (especially in Romania). As a student, I volunteered myself as an undergraduate teaching assistant at my university and as a member of the Romanian Open Source Education Association. My technical expertise is in networking, operating systems and low-level programming.
|
||||
|
||||
**Why did you apply to work on the Linux kernel with the OPW?**
|
||||
|
||||
I think is cool to be a kernel contributor and I wanted to do this for some time.
|
||||
|
||||
### Tulin Izer ###
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/Tulin-Izer-kernel-intern-2.jpg)
|
||||
|
||||
**Tulin Izer worked with Peter Waskiewicz at Intel on parallelizing the x86 boot process. **
|
||||
|
||||
I'm from Turkey. I'm a computer engineering student at Galatasaray University in Istanbul. This is my final year.
|
||||
|
||||
**Why did you apply to work on the Linux kernel with the OPW?**
|
||||
|
||||
I was interested in operating systems and programming in C but I didn't have any experience with kernel development, I thought this would be a good place to start.
|
||||
|
||||
### Xenia Ragiadakou ###
|
||||
|
||||
Currently I study Computer Science at the University of Crete. I have finished some other studies in the past, on Economics and on Eastern Europe Studies. The reason that I decided to change field once again is because I got bored. I don't know how that sounds. I realized that my organism needed something more applicable, creative and dynamic. So, I decided to enter the Computer Science department. Now, my spirit rests peaceful :) I think coding suits me perfectly. It 's like a game and also I enjoy the developers' mentality.
|
||||
|
||||
**Why did you apply to work on the Linux kernel with the OPW?**
|
||||
|
||||
I wanted since a long time to participate in an open source project but i was thinking that I'm not competent enough to do so. There were three factors that drove me to apply. 1) The fact that OPW is aimed at women made me feel more comfortable. 2) The fact that there were projects on linux kernel because I like working on systems. 3) The fact that the introduction to Linux kernel development was smooth and took place quite early, during the application process.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.com/news/featured-blogs/200-libby-clark/746687-outreach-program-for-women-seeks-new-linux-kernel-interns/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://wiki.gnome.org/OutreachProgramForWomen
|
||||
[2]:http://lwn.net/Articles/563977/
|
||||
[3]:http://lwn.net/Articles/570483/
|
||||
[4]:http://kernelnewbies.org/OPWIntro
|
132
sources/Recoll--Text Search Tool For Unix And Linux Desktops.md
Normal file
132
sources/Recoll--Text Search Tool For Unix And Linux Desktops.md
Normal file
@ -0,0 +1,132 @@
|
||||
翻译中 by Linux-pdz
|
||||
Recoll: Text Search Tool For Unix And Linux Desktops
|
||||
================================================================================
|
||||
[Recoll][1] is a text search tool for Unix and Linux desktops. Recoll finds keywords inside documents as well as file names.
|
||||
|
||||
Recoll will do the following for you.
|
||||
|
||||
- It can search any document format.
|
||||
- Supports wild card characters.
|
||||
- Search based on files author, type, size and format etc.
|
||||
- will search on all storage places such as files, archive members, email attachments etc.
|
||||
- supports Desktop and Website integration
|
||||
- Firefox extension is available to index visited web pages history.
|
||||
- One click will open the document inside a native editor or display a text preview.
|
||||
- The software is free, open source, and licensed under the GPL.
|
||||
|
||||
### Install Recoll On Ubuntu / Linux Mint ###
|
||||
|
||||
Recoll is available in the Ubuntu repositories, However it is better to add Recoll repository and install the latest version.
|
||||
|
||||
Add Recoll repository using command:
|
||||
|
||||
sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
|
||||
|
||||
Update the package list with command:
|
||||
|
||||
sudo apt-get update
|
||||
|
||||
Now install Recoll using the following command.
|
||||
|
||||
sudo apt-get install recoll
|
||||
|
||||
For other distros, see the [download page][2] to download and install it from source.
|
||||
|
||||
### Launch Recoll ###
|
||||
|
||||
Recoll can be launched either from Dash or Menu.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Menu_0014.jpg)
|
||||
|
||||
At first launch, you’ll be asked to do indexing your whole home directory. This will take a while depending upon the size of your Home directory and no of files you have. Press the Start indexing now button.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Recoll_002.jpg)
|
||||
|
||||
Also you can adjust the indexing configuration and indexing schedule, if you want to more control of indexing. To do so, simply click on the Indexing configuration or Indexing schedule links. If you want to do it later, you can access these tools from the Preferences menu.
|
||||
|
||||
Once the indexing is done, you can start searching files/folders. The result will be displayed according to the exact relevancy and with a small snippet of the matched content.
|
||||
|
||||
### Configuration ###
|
||||
|
||||
As i noted above, you can adjust the Recoll indexing function if you want more control.
|
||||
|
||||
There are two configuration sections in the Recoll tool.
|
||||
|
||||
1. Index configuration
|
||||
|
||||
2. Index schedule
|
||||
|
||||
Let us see a short description of above sections.
|
||||
|
||||
**Index Configuration** is the section where you want to include directories or exclude the paths from indexing. By default Home directory will be included in the index. You can just remove and add some specific directory(s) for indexing.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/home-sk-.recoll-_003.jpg)
|
||||
|
||||
Also you can define the web history queue and the max size of the web store.
|
||||
|
||||
**Index schedule** is the section where you want to define a schedule to automate batch indexing runs, or start real time indexing when you log in.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Index-scheduling-setup_004.jpg)
|
||||
|
||||
Recoll supports two indexing schedule:
|
||||
|
||||
**Cron Scheduling** – decides at what time indexing should run and installs the crontab entry.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Cron-Dialog_006.jpg)
|
||||
|
||||
As per the above screenshot, the recoll cron job will run on every day at 12 am. After setting up the cron job, click enable to make it active.
|
||||
|
||||
**Real time indexing start up** – decide if real time indexing will be started when you log in.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Real-time-indexing-automatic-start_007.jpg)
|
||||
|
||||
By enabling this option, the recoll daemon will start on every reboot. Be mindful that this settings is applicable only for default index.
|
||||
|
||||
### Basic Search ###
|
||||
|
||||
Hope you knew enough about Recoll now. It is time to search some files/folders. The beauty of this application is it finds keywords inside documents as well as file names.
|
||||
|
||||
In the Recoll interface, enter the search term(query) on the top right search box and click Search button.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Recoll_008.jpg)
|
||||
|
||||
As you see in the above picture, the result will be displayed with exact relevant contents, a small snippet and preview option of the matched contents. You can directly open the searched file by clicking on the Open button or preview it before opening using the Preview button.
|
||||
|
||||
Also you can filter the results according to their categories such as “media”, “message”, “other”, “presentation”, “spreadsheet” and “text” etc. Moreover you can choose the search results that should match “Any term”, “All terms”, “File name” or “Query language”.
|
||||
|
||||
### Advanced Search ###
|
||||
|
||||
Click the Advanced Search icon on the Menu bar or go to **Tools -> Advanced Search**. This will open a new window. From here you’ll be able to search more advanced with clauses. For example i am searching for files that contains matches keyword as “hp” and filename as “storage”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Advanced-search_010.jpg)
|
||||
|
||||
This will find and displays the files that contains the keyword as “hp” and file name as “storage”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Recoll_012.jpg)
|
||||
|
||||
### Unity Desktop And Website Integration ###
|
||||
|
||||
This application supports desktop and website integration. If you want to integrate this with your Ubuntu Unity desktop, install **recoll-lens** with following command.
|
||||
|
||||
sudo apt-get install recoll-lens
|
||||
|
||||
Please note that the Lens is limited to showing at most 20 results. If you want get more than 20 search results, edit **rclsearch.py**, change the “**if actual_results >= 20:**” line.
|
||||
|
||||
If you are using Firefox browser and want to search the website history that you visit everyday, you can use [this firefox extension][3]. This extension works together with Recoll to index the websites that you visit all day. After installing this extension, enable it from the Web history tab of Recoll Index Configuration.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/home-sk-.recoll-_013.jpg)
|
||||
|
||||
All Linux distributions has built-in search function in their file manager to find files/folders as easy as possible. For those who aren’t not happy with the built-in search functionality and looking for an advanced text search tool, then Recoll is a worth trying tool. For me, this tool is lot easier and more powerful for basic and as well as advanced searches.
|
||||
|
||||
Cheers!
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/recoll-text-searching-tool-linux-desktops/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.recoll.org/
|
||||
[2]:http://www.lesbonscomptes.com/recoll/download.html
|
||||
[3]:http://sourceforge.net/projects/recollfirefox/
|
@ -1,36 +0,0 @@
|
||||
[being translated by bazz2]
|
||||
Red Hat Fedora 20 Linux: New Networking, ARM Features
|
||||
================================================================================
|
||||
The latest edition of [Fedora Linux][1], the open source operating system that helps form the basis for [Red Hat][2]'s (RHT) enterprise server platform, is set to debut soon -- though a couple weeks later than initially planned, as bugs have held up the release. Still, it could bring some of this autumn's biggest changes in desktop Linux when it appears in December.
|
||||
|
||||
![](http://thevarguy.com/site-files/thevarguy.com/files/imagecache/medium_img/uploads/2013/11/grayscale.jpg)
|
||||
|
||||
On November 1, the Fedora Project announced that it would push back the release of Fedora 20 by another week. That change came on top of an earlier announcement in late October delaying the release by one week. The [plan now][3] is to have the beta version of the system out on November 12, and a final release on December 17.
|
||||
|
||||
The delays may disappoint Fedora fans, but the developers say the revised schedule will help to smooth out bugs before Fedora 20 goes lives. (That approach, by the way, stands in contrast to the one taken by [Canonical][4]'s [Ubuntu Linux][5] distribution, which sticks hard and fast to pre-determined release dates, a policy that has its own advantages and downsides.)
|
||||
|
||||
And at any rate, Fedora users have a lot to look forward to in the latest and greatest edition of the operating system. For one, the release will have a lighter footprint than its predecessors as a result of the removal of some packages that were previously installed by default, such as syslog and sendmail.
|
||||
|
||||
NetworkManager is also set to gain some useful new features, including support for network bridging and bonding -- both cool things that traditionally required complicated command-line hacking to implement. Now, Fedora will be a more attractive host for complex networking situations, an especially important characteristic for building clouds and software-defined networks.
|
||||
|
||||
And Fedora 20 aims to provide full support for ARM-based devices (specifically, armv7hl hardware), which could give it a leg up in the mobile and emerging-hardware worlds.
|
||||
|
||||
These various changes help to make Fedora 20 one of the most notable desktop Linux distributions of the season -- especially since Ubuntu 13.10, which appeared last month, brought [few updates for the desktop][6]. (It did include [somewhat more for servers and the cloud][7].)
|
||||
|
||||
The enhancements are also significant beyond the Fedora community, which is mostly restricted to more advanced users, since Red Hat uses Fedora as a proving ground for testing features that may eventually become a part of its commercial enterprise operating system, Red Hat Enterprise Linux. So Linux fans can geek out when Fedora 20 goes live (hopefully) in December, and look forward to taking advantage of some of the new features in Red Hat production environments down the road.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://thevarguy.com/open-source-application-software-companies/red-hat-fedora-20-linux-new-networking-arm-features
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://fedoraproject.org/
|
||||
[2]:http://redhat.com/
|
||||
[3]:http://fedoraproject.org/wiki/Releases/20/Schedule
|
||||
[4]:http://canonical.com/
|
||||
[5]:http://ubuntu.com/
|
||||
[6]:http://thevarguy.com/ubuntu/canonicals-ubuntu-linux-1310-brings-few-changes-desktop
|
||||
[7]:http://thevarguy.com/ubuntu/ubuntu-1310-openstack-havana-support-cloud-server-updates
|
43
sources/Red Hat prepares for 64-bit ARM servers.md
Normal file
43
sources/Red Hat prepares for 64-bit ARM servers.md
Normal file
@ -0,0 +1,43 @@
|
||||
(translating by whatever1992)
|
||||
|
||||
Red Hat prepares for 64-bit ARM servers
|
||||
================================================================================
|
||||
> ARM processors could lead to server racks with thousands of nodes, the Red Hat ARM chief predicts
|
||||
|
||||
IDG News Service - Enterprise open-source software vendor Red Hat is keeping an eye on the development of 64-bit ARM processors for servers, building up expertise in case the nascent platform takes hold in the data center.
|
||||
|
||||
"You don't see us in the market today with commercial offerings, but what we are building a competency ahead of some of the 64-bit technology that is coming. So further down the line, if we do have a need to respond to the market, we will have the capability to do that," said Jon Masters, chief ARM architect at Red Hat. Masters spoke Friday at the USENIX LISA (Large Installation System Administration) conference in Washington, D.C.
|
||||
|
||||
The ARM processor represents a "sea change in computing," Masters said. While already the dominant architecture for smartphone and embedded computing devices, ARM processors could also play a role in the data center. Over the past year, servers based on ARM processors have started to show up in the server market. HP is already selling ARM-based servers with its Moonshot line.
|
||||
|
||||
For the data center, because of its low-power design, ARM could bring about an age of hyperscale computing, in which thousands of tiny compute nodes can be packed into a single server rack. "It is a fundamental difference in terms of the sheer scale of what we will be able to build in the near future," Masters said.
|
||||
|
||||
The ARM processors may not run at the speed of x86 processors, but they can offer most of the performance with a fraction of the energy usage, meaning more processors can be packed into a smaller space. "You can take the same technology that goes into your cell phone and make that part of a dense server design" Masters said.
|
||||
|
||||
Many jobs do not require the fastest processors available, he said. Instead the workloads can be spread across more processors. "It's about how much data I can move, not necessarily how much compute I can do," he said. Cloud computing and Web applications, for instance, would do equally well spread out across multiple servers as they would running on fewer, but faster servers.
|
||||
|
||||
ARM's design could also simplify data-center operations. ARM's system on a chip design can eliminate the need for managing many of the external components of servers. For instance, an ARM processor could offer fabric interconnectivity, reducing the need for external cables and top-of-the-rack switches.
|
||||
|
||||
"The days of having discrete cabling for every single blade are numbered," he said.
|
||||
|
||||
There is still a lot of work that needs to be done to bring about hyperscale computing, Masters said.
|
||||
|
||||
ARM licenses its architecture rather than selling processors as Intel does. As a result, there is a fair amount of variation among the different ARM processors from vendors. "There is a lot of gratuitous variation that we don't need to have," Masters said. This can be problematic for data centers that need uniform systems so they can be managed en masse.
|
||||
|
||||
[Linaro][1] is an industry group working to build core open-source software for the ARM platform and part of its mission has been to standardize ARM. Red Hat engineers play a major role in the Linaro Enterprise Group, or LEG, which has been working to standardize the software so users can get one version of Linux to run across ARM processors from multiple vendors. "Those are fundamental expectations in the enterprise space," Masters said.
|
||||
|
||||
"We do need to focus on how to make them fundamentally compatible so you can add value further up the stack," he said.
|
||||
|
||||
Another issue is the support of peripherals, which hasn't been standardized across 32-bit ARM processors. Masters said that LEG is looking into using the ACPI (Advanced Configuration and Power Interface) standard or UEFI (Unified Extensible Firmware Interface) for 64-bit ARM processors. Over time, ARM will offer an automated bus-like capability that will work like PCI buses offer on x86 machines.
|
||||
|
||||
Masters said that Red Hat has not made any announcements about when it would release a version of Red Hat Enterprise Linux for ARM, but he did note that the Fedora Project, the community Linux distribution that tests many of the applications that go into RHEL, now offers a distribution for ARM.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.computerworld.com/s/article/9243921/Red_Hat_prepares_for_64_bit_ARM_servers?taxonomyId=122
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.linaro.org/
|
@ -0,0 +1,173 @@
|
||||
NearTan占坑
|
||||
SBackup: A Simple Backup Solution For Your Linux Desktop
|
||||
================================================================================
|
||||
**SBackup**, Simple Backup, is an Open Source, easy to use backup solution intended for desktop use. It can backup any subset of files and folders. All configuration is accessable via Gnome interface. File and paths can be included and excluded directly or by regex, It supports local and as well as remote backups. Though it looks simple, it has many features to meet the advanced backup functionality.
|
||||
|
||||
### Features ###
|
||||
|
||||
SBackup will do the following things for you:
|
||||
|
||||
- It creates both compressed and uncompressed backups.
|
||||
- It can split uncompressed backups into multiple parts.
|
||||
- It support of multiple backup profiles. You can create and edit the profiles as per your requirement, but you can’t delete the default profile.
|
||||
- It has options such as logging, email notification and status icon presenting progress and notifications.
|
||||
- It supports scheduled backups and manual backups.
|
||||
- It can backup files either to local destinations (e.g. hard disk) or remote destinations (e.g. NAS over FTP).
|
||||
|
||||
### Install SBackup On Ubuntu, Linux Mint and Debian ###
|
||||
|
||||
SBackup is available in the default repositories of Ubuntu, Debian and Linux Mint. So just install it using command:
|
||||
|
||||
sudo apt-get install sbackup
|
||||
|
||||
### Launch SBackup ###
|
||||
|
||||
Open up SBackup either from Dash or Menu.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Menu_0011.jpg)
|
||||
|
||||
It will look like as shown below.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_002.jpg)
|
||||
|
||||
### SBackup Profiles ###
|
||||
|
||||
Initially SBackup won’t have any user profiles. Only “default profile” will be available. Be mindful that you can’t delete the default profile. To create a new profile, go to Tools -> Profile Manager. You will have a following like window.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_003.jpg)
|
||||
|
||||
Click Add to create a new profile, let me name the profile as “sk”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_004.jpg)
|
||||
|
||||
Now a new profile has been created. If you want to use your custom profile, just select the profile and click Edit.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Configuration-Profile-Manager_005.jpg)
|
||||
|
||||
Now you may see that SBackup profile has been switched to “sk” profile.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_006.jpg)
|
||||
|
||||
However you can use default profile and edit it as per your requirements if you wish.
|
||||
|
||||
**Important Note**: If you launch it from a normal user you can’t schedule the backup. To schedule your backup you must run SBackup as root user. As see you in the above screenshots, the schedule tab is greyed out, because i launched it from a normal user.
|
||||
|
||||
In this how-to tutorial, i am going to use **default profile** with root user privileges.
|
||||
|
||||
Open up your Terminal and run the following command to open SBackup with root user privileges.
|
||||
|
||||
sudo sbackup-config-gtk
|
||||
|
||||
The above command will open SBackup with default profile with administrative mode.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_001.jpg)
|
||||
|
||||
### General ###
|
||||
|
||||
In General section you can define how often do you want to do a full backup. The default option is 7 days. By default SBackup will do full backup every 7 days. Then you can define the compression format for your backup file.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0021.jpg)
|
||||
|
||||
### Include ###
|
||||
|
||||
This tab pretty self-explanatory. You can include the files/folders that you want to backup using SBackup. Here you can either select individual files or entire folder to backup. I deleted all directories in the include section and added single directory called “Resume”.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0031.jpg)
|
||||
|
||||
### Exclude ###
|
||||
|
||||
Just like Include tab, we can define the files/folders path to exclude from being backed-up by SBackup. Just select the path of the files/folders that needs to be excluded from backup. By default SBackup will exclude the /media, /var/run/, /var/cache/, /var/spool/ and /vat/tmp/ directories.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0041.jpg)
|
||||
|
||||
Further more, you can add the file types that you want to exclude from backup such mp3 or avi etc. By default SBackup exclude files such as mp3, avi, mpeg, mkv, ogg and iso from backup. If you want to include them in your backup, just select and click remove to add them in your backup. Also if you want to add some other file types in the exclude list, just add them by clicking on the add button.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_005.jpg)
|
||||
|
||||
By default SBackup won’t backup the folders .gvfs, .thumbnails, .Trash and .cache etc.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0061.jpg)
|
||||
|
||||
Also you can omit the files/folders of certain size from backup. Here i excluded the files/folders which are bigger than 100MB in size.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0071.jpg)
|
||||
|
||||
### Destination ###
|
||||
|
||||
This is the path where you want to store your backup file. As i mentioned above, you can backup files/folders either in your local hard drive or to an external destination such as FTP, NAS etc. Here i am going to save my backups in /home/sk/My Backup directory.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_019.jpg)
|
||||
|
||||
**Note:** Make sure that destination has enough free space to store the backup.
|
||||
|
||||
### Schedule ###
|
||||
|
||||
In this section you can schedule the backups at a particular time. Click on the **Simple** radio button and select your schedule type such as hourly, daily, weekly and monthly.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_010.jpg)
|
||||
|
||||
If you’re good at command line crontab, select custom and define the cron job. If you select the daily schedule type, a cron job will be created in the **/etc/cron.daily/** location.
|
||||
|
||||
sudo ls -l /etc/cron.daily/sbackup
|
||||
|
||||
Sample output:
|
||||
|
||||
lrwxrwxrwx 1 root root 33 Nov 8 15:34 /etc/cron.daily/sbackup -> /usr/share/sbackup/sbackup-launch
|
||||
|
||||
### Purging ###
|
||||
|
||||
This section gives you the option to delete the backup files after a particular period. By default, your backup files will be deleted after 30 days.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0111.jpg)
|
||||
|
||||
### Report ###
|
||||
|
||||
Report is the final section. From here you can define to receive the mail notification directly in your inbox after the backups got finished. Enter your mail id, smtp server address, email username and password and click Test settings. Be mindful that, before test the mail settings save the configuration by clicking on the Save Configuration button on the Tool bar.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_0121.jpg)
|
||||
|
||||
You’ll see a message “Test Successful” after testing your mail settings.
|
||||
|
||||
### Start Backup ###
|
||||
|
||||
If you want to start backup immediately, click **Make Backup now button** on the SBackup tool bar.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Selection_015.jpg)
|
||||
|
||||
A new window will open. Click Yes to create backup.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/sbackup-config-gtk_024.jpg)
|
||||
|
||||
Now you can see that a backup process will be started in the background. You can monitor the progress of the backup by means of the status indicator displayed in the notification area.
|
||||
|
||||
After completing the backup, close SBackup and check for your backup in the destination directory. In my case my destination directory is /home/sk/My Backup.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Selection_020.jpg)
|
||||
|
||||
### Restore backup ###
|
||||
|
||||
From your Terminal run command:
|
||||
|
||||
sudo sbackup-restore-gtk
|
||||
|
||||
In the SBackup restoration window, select the date to get the list of the available backups and select the any one of the available snapshots. Click on the any one of the files to restore on the Restoration management pane. Once you done, click **restore** to save them in the default location or click **restore as** to save the files in a custom location.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/11/Simple-Backup-Suite_023.jpg)
|
||||
|
||||
Now the data will be restored from the selected backup. That’s it.
|
||||
|
||||
### Sources: ###
|
||||
|
||||
- [https://launchpad.net/sbackup][1]
|
||||
- [http://sourceforge.net/projects/sbackup/][2]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/linux-desktop-backup-made-easy-sbackup/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://launchpad.net/sbackup
|
||||
[2]:http://sourceforge.net/projects/sbackup/
|
@ -1,69 +0,0 @@
|
||||
crowner挖的无底洞,争取早日填上
|
||||
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
|
@ -0,0 +1,27 @@
|
||||
Suse Linux Enterprise expands regular support to 10 years
|
||||
================================================================================
|
||||
**Suse expands general support on customer requests**
|
||||
|
||||
Suse Linux Enterprise (SLE) version 11 and up will come with 10 years of general support instead of the seven years offered up to now, in a move that matches services from competitors.
|
||||
|
||||
"We will move to a new life cycle of Suse Linux Enterprise," said Nils Brauckmann, president and general manager for Suse, during his keynote at the Susecon 2013 conference in Lake Buena Vista, Florida. A [video][1] of the keynote was posted on YouTube.
|
||||
|
||||
"Suse Linux Enterprise 11 is the first major version to receive 10 years of general support followed by 3 years of extended support (LTSS). We consider this the new standard Suse Linux Enterprise life cycle going forward, covering versions 12 and on as well," said Gerald Pfeifer, senior director of Suse product management and operations, in an email Wednesday. Suse sells open-source Linux software to businesses.
|
||||
|
||||
Suse offers different packages for extended support. Extending the support to 13 years will cost US$60,000 for up to 100 servers and $80,000 for up to 500 servers, said Pfeifer. Support for an unlimited number of servers can be extended for $125,000 he said, adding that these are standard prices that Suse has been using for several years.
|
||||
|
||||
By moving from a seven-plus-three-year support cycle to a 10-plus-three-year support cycle, customers get more time under general support, Brauckmann said during his keynote. The decision to increase the support cycle was made a couple of weeks ago and is a direct reaction to customer requests, he added.
|
||||
|
||||
Suse's general support extension follows Red Hat's move in January last year to extend the life cycle of Red Hat Enterprise Linux (RHEL) 5 and 6 from seven to 10 years, in response to enterprise customer demand.
|
||||
|
||||
Oracle Linux, which is based on RHEL, expanded its life cycle support from eight to 10 years in February last year. CentOS, an Enterprise Linux distribution that is based on a rebuild of RHEL, has also been offering 10-year support as a standard for a while.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.itworld.com/operating-systems/382610/suse-linux-enterprise-expands-regular-support-10-years
|
||||
|
||||
译者:[译者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/watch?v=T0W4izFu_WM
|
39
sources/TRANSLATING_BY_IVAN_Making Linux More Accessible.md
Normal file
39
sources/TRANSLATING_BY_IVAN_Making Linux More Accessible.md
Normal file
@ -0,0 +1,39 @@
|
||||
Making Linux More Accessible
|
||||
================================================================================
|
||||
A startling fact is that there are in excess of a billion people who have some type of disability. That represents approximately 15% of the world's population with a physical, sensory or mental limitation that interferes with their ability to move, see, hear or learn. 350 million people in the world are partially sighted or blind. The faster computer technology evolves, the more excluded these individuals would become without development in computer software that seeks to address their needs.
|
||||
|
||||
Accessibility is the degree to which products, devices, services, or environments are available to as many people as possible whatever their circumstances. Accessibility can be viewed as the ability to access and benefit from a system or entity. Accessibility is paramount. Social inclusion is not an act of charity but a fundamental human right.
|
||||
|
||||
We have witnessed Linux software and distributions that have made strides to help make everyone socially inclusive. For example, the GNOME Accessibility Project develops open source accessibility solutions for graphical user interfaces. Ubuntu has an Accessibility Team that aims to make Ubuntu usable by a broad a spectrum of people as possible. Special mention should also go to the Vinux Project, which is a Ubuntu derived distribution optimised for the needs of blind and partially sighted users.
|
||||
|
||||
There are also lots of individual software applications that offer different accessibility features. This article seeks to identify some of the finest open source software that is available that helps to enable individuals make full use of computer-based technology whatever their physical or sensory abilities.
|
||||
|
||||
So let's explore the 8 universal access tools at hand. For each application we have compiled its own portal page, a full description with an in-depth analysis of its features, a screenshot, together with links to relevant resources and reviews.
|
||||
|
||||
### Universal Access ###
|
||||
|
||||
- [Easystroke][1] Gesture recognition program
|
||||
- [Simon][2] Flexible speech recognition software
|
||||
- [Orca Screen Reader][3] Scriptable screen reader
|
||||
- [Julius][4] Two-pass large vocabulary continuous speech recognition engine
|
||||
- [Florence Virtual Keyboard][5] Extensible scalable virtual keyboard
|
||||
- [Caribou][6] Configurable on screen keyboard with scanning mode
|
||||
- [Dasher][7] Graphical predictive text input system
|
||||
- [xvkbd][8] Virtual (graphical) keyboard program
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxlinks.com/article/20131109042823957/UniversalAccess.html
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://sourceforge.net/apps/trac/easystroke/
|
||||
[2]:http://simon-listens.org/
|
||||
[3]:https://wiki.gnome.org/Orca
|
||||
[4]:http://julius.sourceforge.jp/
|
||||
[5]:http://florence.sourceforge.net/english.html
|
||||
[6]:https://wiki.gnome.org/Caribou
|
||||
[7]:http://www.inference.phy.cam.ac.uk/dasher/
|
||||
[8]:http://homepage3.nifty.com/tsato/xvkbd/
|
@ -1,125 +0,0 @@
|
||||
Translating-------------geekpi
|
||||
|
||||
15 The Linux Kernel: Configuring the Kernel Part 11
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.530/)
|
||||
|
||||
Ready to configure more drivers? There is still a lot to do.
|
||||
|
||||
Linux supports two different Compaq Smart Array controllers (Compaq SMART2 support) and (Compaq Smart Array 5xxx support). Array controllers are devices that present physical storage units as logical units. These controllers may also implement hardware-based RAID. The difference between hardware and software RAID is simple. Linux manages and sees software RAID. Linux sees hardware RAID as any other storage unit. This means Linux is not aware that the device is a RAID drive. The hardware (array controller) manages the RAID system independently of the kernel. This is better for system performance because the kernel does not need to configure or manage RAID. Note, not all array controllers have RAID abilities.
|
||||
|
||||
The above mentioned array controllers can access SCSI tapes with this driver (SCSI tape drive support for Smart Array 5xxx). SCSI tapes are magnetic-tape drives that use the SCSI protocol.
|
||||
|
||||
The PCI RAID controllers Mylex DAC960, AcceleRAID, and eXtremeRAID are supported by this driver (Mylex DAC960/DAC1100 PCI RAID Controller support). A PCI RAID controller is an array controller connected to a PCI card. RAID controllers are array controllers with RAID capabilities.
|
||||
|
||||
The MM5415 battery-backed RAM chips are supported with this driver (Micro Memory MM5415 Battery Backed RAM support). Battery-backed RAM chips allow the data to remain on the RAM device when the power is lost. This helps to protect data. Otherwise, when power is lost, the current computer session is lost.
|
||||
|
||||
To use a typical file (such as an ISO image) as a block device and mount it when this feature is enabled (Loopback device support). This is useful for retrieving files from image files without the need to burn the file to a disk or pull it apart. Imagine getting an ISO file from the Internet that contains many files. If only one file in the package is desired and the user does not want to burn the ISO to a disc or does not know how to open an ISO file, the user can instead mount the ISO.
|
||||
|
||||
The Linux kernel creates some loop devices during init time, so some loopback devices are already prepared and made (Number of loop devices to pre-create at init time). This feature saves time when a file (like an ISO) or virtual device (like a virtual hard-drive [vhd]) is mounted as a loopback device. This setting allows developers to choose how many the kernel should pre-make.
|
||||
|
||||
Ciphers from the CryptoAPI can be used when "Cryptoloop Support" is enabled. This can be used for hard-drive encryption. However, not all filesystems are supported.
|
||||
|
||||
Next, users can enable "DRBD Distributed Replicated Block Device support". This is like a network RAID1. These devices own the device files /dev/drbdx. These storage devices are usually used in clusters where each computer in the cluster has a storage unit that is mirrored from the master. This means each computer's hard-drive is a mirrored copy of the hard-drive found in the central “master” computer of the group. A cluster is a group of computers acting as one large powerful unit. However, each cluster has one controlling computer called the master node. The rest of the computers are slave nodes.
|
||||
|
||||
The DRBD supports fault injection for testing IO error handling (DRBD fault injection). Remember, fault injection is the process of making a device/software think an error occurred so the developer can test how the hardware/software handles errors.
|
||||
|
||||
If the kernel is intended to be a client for network block devices, then enable this feature (Network block device support). The first device file is /dev/nd0. A network block device is a remote storage unit that is accessed via a network.
|
||||
|
||||
Solid state drives (SSD) that are directly connected to PCI or PCI Express cards will need this driver (NVM Express block device).
|
||||
|
||||
|
||||
Individual SCSI object-based storage (OSD) objects can be used as a block device with this feature (OSD object-as-blkdev support).
|
||||
|
||||
Next is a driver for "Promise SATA SX8 support". This is a driver for a SATA controller made by Promise Technology Inc.
|
||||
|
||||
Linux allows a part of the RAM to be utilized as a block device (RAM block device support). This is commonly seen on live Linux distros where the system is running entirely on the RAM. A live Linux distro loads off of a disc and then loads into RAM so the installed OS is not harmed when trying a new operating system, or repairing another.
|
||||
|
||||
The next setting allows users to enter in the "Default number of RAM disks".
|
||||
|
||||
The "Default RAM disk size" can be set in kilobytes.
|
||||
|
||||
The kernel can support XIP filesystems on RAM devices acting as block devices (Support XIP filesystems on RAM block device). This feature will enlarge the kernel's size. XIP (eXecute In Place) filesystems are filesystem that allow executables to store data on the same filesystem instead of utilizing RAM like other applications. Such filesystems are needed when running an executable on a live Linux system which resides on the RAM.
|
||||
|
||||
Next, the kernel can be given support for "Packet writing on CD/DVD media".
|
||||
|
||||
The kernel developer can set the max amount of active concurrent packets (Free buffers for data gathering). A large number will speed up write performance at the cost of memory. One packet will consume about sixty-four kilobytes.
|
||||
|
||||
The Linux kernel can use a rewritable compact-disc as cache space (Enable write caching). This feature is still experimental.
|
||||
|
||||
The next feature allows the ATA specification to be used over Ethernet cables (ATA over Ethernet support).
|
||||
|
||||
This following driver allows virtual block devices to be created for virtio (Virtio block driver). Virtio is a platform for I/O virtualization.
|
||||
|
||||
Old hard-drives will need a special driver (Very old hard disk (MFM/RLL/IDE) driver).
|
||||
|
||||
Here is a driver for the previously mentioned Rados device (Rados block device (RBD)).
|
||||
|
||||
Next, a device specific driver is available (IBM FlashSystem 70/80 PCIe SSD Device Driver).
|
||||
|
||||
Now, we will move on to miscellaneous devices. The first setting is for enabling/disabling potentiometers (Analog Devices Digital Potentiometers ).
|
||||
|
||||
If the potentiometer(s) is on a I2C bus, then this should be enabled (support I2C bus connection).
|
||||
|
||||
If the potentiometer is attached to a SPI bus, then this driver will be needed (support SPI bus connection).
|
||||
|
||||
NOTE: The Linux kernel supports many sensors because the Linux kernel is often used in weather devices and robots.
|
||||
|
||||
This driver is for the IBM RSA (Condor) service processor (Device driver for IBM RSA service processor).
|
||||
|
||||
The kernel also has a driver for the PCI Sensable PHANToM devices (Sensable PHANToM (PCI)).
|
||||
|
||||
This driver is for directing trace data from various devices via Parallel Trace Interface (PTI) out to Intel Penwell PTI ports (Parallel Trace Interface for MIPI P1149.7 cJTAG standard). This directed data is for debugging purposes.
|
||||
|
||||
Some SGI IO controllers have an IOC4 chip that needs this driver (SGI IOC4 Base IO support). SGI IO controllers are devices made by SGI that manage input/output. The IOC4 chip controls a lot of the tasks performed by such devices. This is a basic driver. Other drivers for such devices will rely on this driver.
|
||||
|
||||
There are few Texas Instruments Flash Media adapter drivers for the Linux kernel (TI Flash Media interface support) and (TI Flash Media PCI74xx/PCI76xx host adapter support).
|
||||
|
||||
This "Integrated Circuits ICS932S401" driver for ICS932S401 clock control chips.
|
||||
|
||||
The Atmel Synchronized Serial Communication peripheral (SSC) has a driver in the kernel (Device driver for Atmel SSC peripheral).
|
||||
Such a device provides point-to-point serial connections between devices.
|
||||
|
||||
The "Enclosure Services" feature supports hard-drive bays.
|
||||
|
||||
This is a timer driver for CS5535/CS5536 chips (CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support).
|
||||
|
||||
This driver gives applications the ability to communicate with iLO management processors in HP ProLiant servers (Channel interface driver for the HP iLO processor). “iLO” stands for Integrity Integrated Lights-Out. iLO allows remote server management.
|
||||
|
||||
The Linux kernel supports the ALS APDS9802 light sensor (Medfield Avago APDS9802 ALS Sensor module). Some other supported sensor include
|
||||
Intersil ISL29003 ambient light sensor
|
||||
Intersil ISL29020 ambient light sensor
|
||||
Taos TSL2550 ambient light sensor
|
||||
ROHM BH1780GLI ambient light sensor
|
||||
BH1770GLC / SFH7770 combined ALS - Proximity sensor
|
||||
APDS990X combined als and proximity sensors
|
||||
|
||||
NOTE: Most of these drivers should be included as modules if the kernel being made is intended for a broad range of computers.
|
||||
|
||||
Linux can even use a "Honeywell HMC6352 compass".
|
||||
|
||||
The kernel also supports the "Dallas DS1682 Total Elapsed Time Recorder with Alarm".
|
||||
|
||||
The 16-bit digital-to-analog converter is supported with this driver (Texas Instruments DAC7512).
|
||||
|
||||
The "VMware Balloon Driver" manages physical memory by taking physical pages from guest operating systems that do not need it and giving pages to those that do.
|
||||
|
||||
There are also two different pressure sensors (BMP085 digital pressure sensor on I2C) and (BMP085 digital pressure sensor on SPI).
|
||||
|
||||
An Intel Input/Output Hub (IOH) is also supported by the kernel (Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB). Specifically, this is the PCH PHUB (Platform Controller Hub Packet Hub) Intel Topcliff.
|
||||
|
||||
The "FSA9480 USB Switch" is a detector that detects when devices are plugged in.
|
||||
|
||||
The next option permits bitstream configuration (Lattice ECP3 FPGA bitstream configuration via SPI).
|
||||
|
||||
The Silicon microcontroller uses the Silicon Labs C2 Port which needs a special driver (Silicon Labs C2 port support).
|
||||
|
||||
Again, keep watching for the next articles because there is still a lot more to do.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-11.4640/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,125 +0,0 @@
|
||||
16 The Linux Kernel: Configuring the Kernel Part 12
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.539/)
|
||||
|
||||
Welcome and enjoy the next part of the Linux kernel configuration series. The kernel supports a large variety of hardware, protocols, and features as you have already guessed.
|
||||
|
||||
The next set of features we will discuss is "EEPROM support". Electrically Erasable Programmable Read-Only Memory is a form of memory that is not erased when the power is lost or purposely shut off.
|
||||
|
||||
The kernel supports EEPROM chips on I2C cards including FRAMs, ROMs, and SRAMs (I2C EEPROMs / RAMs / ROMs from most vendors). FRAM (also called FeRAM is a Random Access Memory chip that uses ferroelectric principles instead of dieletric materials to store data. A ROM chip is a Read Only Memory chip. SRAM is Static instead of Dynamic like DRAM. DRAM must be refreshed to retain data while SRAM does not require refreshing. However, both lose the stored data when the power is turned off or lost.
|
||||
|
||||
The kernel also supports EEPROMs for SPI buses (SPI EEPROMs from most vendors). The Serial Peripheral Interface Bus (SPI) is a full duplex bus system that lacks an error-checking protocol.
|
||||
|
||||
The older I2C EEPROM chips require a driver other than the I2C driver above (Old I2C EEPROM reader). The I2C bus is intended for embedded systems and cellphones due to the low-speed bus protocol that is used.
|
||||
|
||||
This feature is needed to prevent the Maxim programmable EEPROM from going into read-only mode (Maxim MAX6874/5 power supply supervisor). Specifically, this driver provides better power management to the chip.
|
||||
|
||||
There is also a driver for "EEPROM 93CX6 support", "Microwire EEPROM 93XX46 support", and then "ENE CB710/720 Flash memory card reader support".
|
||||
|
||||
Like with many other kernel features, there are debugging features for EEPROM devices (Enable driver debugging). Again, for better performance, disable debugging features.
|
||||
|
||||
Next, we have a Texas Instruments feature (Shared transport core driver). This driver provides transport protocols for BT/FM and GPS chips.
|
||||
|
||||
The following driver supports the I2C LIS3LV02Dx accelerometer (STMicroeletronics LIS3LV02Dx three-axis digital accelerometer (I2C)). The data provided by the device is stored in /sys/devices/platform/lis3lv02d.
|
||||
|
||||
Next, the Linux kernel supports a module for downloading firmware to Altera's FPGA (Altera FPGA firmware download module). An FGPA is a field-programmable gate array. These are programmable integrated circuits.
|
||||
|
||||
The "Intel Management Engine Interface" offers security and other services to Intel chips.
|
||||
|
||||
"ME Enabled Intel Chipsets" can have MEI support. MEI is Management Engine Interface. This driver gives supported chipsets MEI services.
|
||||
|
||||
The "VMware VMCI Driver" is a high-speed virtual device for relaying communications between the guest and host. VMCI stands for Virtual Machine Communication Interface.
|
||||
|
||||
Next, "ATA/ATAPI/MFM/RLL support" can be enabled/disabled. MFM (Modified Frequency Modulation) is a specific method for encoding floppy disk bits. However, this does not work on all floppy disks. MFM uses the RLL (Run-Length Limited) coding scheme. RLL transfers data going through communication systems that have bandwidth limits. ATAPI is the previously mentioned ATA Packet Interface and ATA is the same ATA mentioned when discussing interface standards.
|
||||
|
||||
Now, we will discuss SCSI support. Small Computer System Interface is another interface standard as is SATA. USB and FireWire devices use the SCSI protocol.
|
||||
|
||||
The first SCSI setting concerns the "RAID Transport Class". This allows RAID to use the SCSI standard.
|
||||
|
||||
To use SCSI targets, enable this feature (SCSI target support).
|
||||
|
||||
If the system will run old Linux applications, the system may need "legacy /proc/scsi/ support".This will create the SCSI files once placed in /proc/scsi/.
|
||||
|
||||
To support SCSI disks, enable the next feature (SCSI disk support). This is a generic driver.
|
||||
|
||||
To support SCSI tapes, enable this feature (SCSI tape support). This is a generic driver. A SCSI tape drive stores data on tape-like magnetic strips.
|
||||
|
||||
|
||||
The OnStream SCSI tapes need this driver instead of the previously mentioned generic SCSI driver (SCSI OnStream SC-x0 tape support).
|
||||
|
||||
For "SCSI CDROM support" enable this feature. Some CD-ROMs use the SCSI protocol.
|
||||
|
||||
Next, the user can enable "Enable vendor-specific extensions (for SCSI CDROM)".
|
||||
|
||||
This is a SCSI driver that is a generic driver for a larger variety of SCSI devices (SCSI generic support). This is mainly used for SCSI scanners and other SCSI devices not supported by the previously mentioned SCSI drivers or those discussed afterwards.
|
||||
|
||||
Some SCSI jukeboxes need this SCSI driver (SCSI media changer support).
|
||||
|
||||
The Linux kernel offers "SCSI Enclosure Support". A SCSI enclosure is a device that manages the power and cooling of the SCSI device as well as offer other services not related to the data.
|
||||
|
||||
The Linux kernel should be set to search for all Logical Unit Numbers (LUN) for each SCSI device (Probe all LUNs on each SCSI device). A LUN is a SCSI address.
|
||||
|
||||
Extra error reporting is available for SCSI (Verbose SCSI error reporting (kernel size +=12K)). This will increase the size of the kernel significantly.
|
||||
|
||||
There is also a logger for SCSI (SCSI logging facility).
|
||||
|
||||
To enhance your system, enable this feature that allows SCSI to be probed while the system boots up rather than booting and then probing (Asynchronous SCSI scanning). Most systems can perform both tasks at once, so why not allow it? For hardware with many SCSI devices attached, this will increase boot time significantly.
|
||||
|
||||
Next, "Parallel SCSI (SPI) Transport Attributes" allows each SCSI device to send transport information to sysfs. Some systems require this feature.
|
||||
|
||||
This next feature is the same as above, but sends information about transport from FiberChannel devices (FiberChannel Transport Attributes). FiberChannel devices use SCSI.
|
||||
|
||||
Next, the user can enable/disable "SCSI target support for FiberChannel Transport Attributes".
|
||||
|
||||
Transport information from iSCSI devices and SAS devices can also be exported to sysfs (iSCSI Transport Attributes) and (SAS Transport Attributes). SAS stands for Serial Attached SCSI.
|
||||
|
||||
Next, ATA support is added to libsas (ATA support for libsas (requires libata)). Note that the configuration tools says libata is required. To satisfy this need, enable ATA support. Most likely, the configuration tool has or will do this for you, but double check anyway. libsas and libata are the libraries that provide support for SAS and ATA, respectively.
|
||||
|
||||
The next feature permits SAS interfaces to accept SMP frames (Support for SMP interpretation for SAS hosts). This adds a SMP interpreter to libsas. However, this does increase the kernel's size. SMP frames allow all processors on multi-CPU systems to access SAS devices.
|
||||
|
||||
SRP can send transport data to sysfs (SRP Transport Attributes). SRP stands for SCSI RDMA Protocol. RDMA stands for Remote Direct Memory Access. This means SRP is a protocol used to access data from remote SCSI devices attached to another computer.
|
||||
|
||||
Next, the user can enable "SCSI target support for SRP Transport".
|
||||
|
||||
Low-level SCSI drivers can be enabled (SCSI low-level drivers). This provides many basic drivers.
|
||||
|
||||
After that, users can enable/disable "PCMCIA SCSI adapter support". This adapter allows SCSI devices to attach to PC cards.
|
||||
|
||||
There are some drivers for specific adapters - (Future Domain PCMCIA support), (Qlogic PCMCIA support), and (Symbios 53c500 PCMCIA support).
|
||||
|
||||
Devices with multi-path setups will need this feature (SCSI Device Handlers). This is used in clusters where each node needs a direct path to a SCSI storage unit.
|
||||
|
||||
Next, the "OSD-Initiator library" can be enabled. This is a SCSI driver that provides patches, the OSD protocol, and the T10 protocol to SCSI devices. OSD stands for Object-based Storage Device; this is discussed more in the next paragraph.
|
||||
|
||||
This feature makes a SCSI upper layer for testing and managing /dev/osdx devices (OSD Upper Level driver). exofs uses this driver for mounting OSD-based filesystems. OSD devices are storage devices that do not use blocks like other storage units. Instead, OSD devices store data in containers called objects. exofs was once called OSDFS.
|
||||
|
||||
OSD features provide debugging tools if enabled (Compile All OSD modules with lots of DEBUG prints).
|
||||
|
||||
Now, we can discuss Serial ATA and Parallel ATA features and drivers. The first feature to enable/disable is for debugging (Verbose ATA error reporting).
|
||||
|
||||
Next, users should enable the Advanced Configuration and Power Interface feature for ATA devices (ATA ACPI Support). This will allow the kernel to manage power usage more efficiently in SATA devices.
|
||||
|
||||
The kernel contains a driver for "SATA Zero Power Optical Disc Drive (ZPODD) support". This powers off SATA optical disc drives (ODD) when not in use. This saves energy and reduces wear and tear.
|
||||
|
||||
TIP: Even when making a high-performance kernel, try to enable all power management features. This reduces power consumption, operating costs, heat production (heat reduces performance), and wear and tear.
|
||||
|
||||
SATA port multipliers need this driver (SATA Port Multiplier support). A port multiplier is a device that has numerous ports but only needs to plug into one port itself. For instance, if a piece of hardware has one SATA port, but more are needed, plug the port multiplier into the one port. Now the device has many SATA ports.
|
||||
|
||||
Next is a driver for AHCI SATA (AHCI SATA support). Advanced Host Controller Interface (AHCI) is an operation standard for SATA bus adapters.
|
||||
|
||||
For AHCI SATA devices to be supported on SoC hardware, this driver must be enabled (Platform AHCI SATA support). SoC stands for System-on-a-Chip.
|
||||
|
||||
Next are some drivers for some specific devices.
|
||||
Initio 162x SATA support
|
||||
ACard AHCI variant (ATP 8620)
|
||||
Silicon Image 3124/3132 SATA support
|
||||
|
||||
Again, watch and wait for the next awesome article.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-12.4681/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,129 +0,0 @@
|
||||
17 The Linux Kernel: Configuring the Kernel Part 13
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.555/)
|
||||
|
||||
Aloha! In this next article of the Linux kernel series, we are still configuring ATA devices and we then move on to logical volumes/storage.
|
||||
|
||||
"ATA SFF support (for legacy IDE and PATA)" should be enabled because this extends the abilities of ATA.
|
||||
|
||||
To support Pacific Digital ADMA controllers, enable "Pacific Digital ADMA support".
|
||||
|
||||
"Pacific Digital Serial ATA QStor support" is offered by this next driver.
|
||||
|
||||
Support for the Promise SATA SX4 device is supported by the Linux kernel (Promise SATA SX4 support (Experimental)).
|
||||
|
||||
SFF ATA controllers with BMDMA abilities will need this driver (ATA BMDMA support). BMDMA stands for Bus-Master Direct Memory Access.
|
||||
|
||||
Next, this driver provides support for various Intel SATA and PATA controllers (Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support).
|
||||
|
||||
Here is another device-specific driver (Calxeda Highbank SATA support) and another (Marvell SATA support) and another (NVIDIA SATA support) and another (Promise SATA TX2/TX4 support) and another (Silicon Image SATA support) and several more (SiS 964/965/966/180 SATA support), (ServerWorks Frodo / Apple K2 SATA support), (ULi Electronics SATA support), (VIA SATA support), . . . .. Because many of the SATA/PATA controllers are designed differently, a generic driver cannot be used on many of these devices.
|
||||
|
||||
Next, ATA devices on PC Cards are supported by this driver unless a device-specific driver manages the hardware (PCMCIA PATA support).
|
||||
|
||||
After that, here is a generic PATA driver that manages all other PATA devices not supported by previously enabled drivers (Generic platform device PATA support).
|
||||
|
||||
The power consumption of PATA devices are managed by this ACPI driver (ACPI firmware driver for PATA). It is highly recommended that ACPI be enabled for all hardware on the system. Although this increases the kernel's size, ACPI is better for performance.
|
||||
|
||||
"Generic ATA support" is offered by this driver.
|
||||
|
||||
Legacy support for ISA, VLB, and PCI bus PATA devices can be added via this driver (Legacy ISA PATA support (Experimental)). This legacy support uses the new ATA layer.
|
||||
|
||||
This set of features contains many abilities for RAID and LVM as seen in the following feature options (Multiple devices driver support (RAID and LVM)).
|
||||
|
||||
INTERESTING FACT: The kernel is written in C and Assembly.
|
||||
|
||||
This driver allows RAID and LVM to be combined (RAID support). This is used to make several LVMs use RAID. Partitions are combined into Logical Block Devices which are then used to form RAID devices.
|
||||
|
||||
Many users will want RAID devices to be detected during booting (Autodetect RAID arrays during kernel boot). If you do not have RAID, then do not enable this feature. Otherwise, the boot process will take a few seconds longer than what it needs to be.
|
||||
|
||||
NOTE: When configuring the Linux kernel, it is best to follow the "use it or lose it" principal. That is, if you will not use it, then disable the feature.
|
||||
|
||||
Hard-drive partitions can be added together using this driver (Linear (append) mode).
|
||||
|
||||
The following driver adds RAID-0 support to logical block devices (RAID-0 (striping) mode). Then, there is (RAID-1 (mirroring) mode), (RAID-10 (mirrored striping) mode), and (RAID-4/RAID-5/RAID-6 mode).
|
||||
|
||||
The MD framework needs multipath support (Multipath I/O support). The MD framework is a Multi Device framework which manages multiple devices as one unit. For example, combining the partitions of many storage units will make multiple devices act as one. The multipath support is for handling a virtual "single device" with many addresses. Because the single storage unit is physically more than one piece of hardware, it will have more than one hardware address.
|
||||
|
||||
These larger multi-disk storage units can be tested for bugs using this debugging driver (Faulty test module for MD).
|
||||
|
||||
The "Device mapper support" is a volume manager that is used to map logical sectors. LVM uses sector mapping.
|
||||
|
||||
The device mapper can have debugging features if enabled (Device mapper debugging support).
|
||||
|
||||
These logical devices can be set to encrypt data if desired (Crypt target support). This feature can allow users to later encrypt such storage devices.
|
||||
|
||||
Snapshots of these logical storage units can only be taken if this feature is enabled (Snapshot target).
|
||||
|
||||
Thin provisioning allows logical volumes to be setup to have more storage capacity than the physical storage units that make up the logical volume (Thin provisioning target). This feature also provides snapshot abilities of such storage. This excess virtual data space cannot immediately be used. The point of it is to allow users to add a physical storage unit in the future and save time configuring the logical block device.
|
||||
|
||||
Thin provisioning can be debugged with this feature (Keep stack trace of thin provisioning block lock holders).
|
||||
|
||||
The performance of block devices can be improved by moving the more commonly used data to the faster storage units (Cache target (EXPERIMENTAL)).
|
||||
|
||||
Volume managers can be made to mirror logical volumes (Mirror target).
|
||||
|
||||
Device-mapper (dm) targets can be made to support the mappings of RAID1, RAID10, RAID4, RAID5 and RAID6 (RAID 1/4/5/6/10 target).
|
||||
|
||||
The device-mapper logs can be mirrored in userspace (Mirror userspace logging).
|
||||
|
||||
A "Zero target" is a device that disregards writes and returns reads as zero.
|
||||
|
||||
Next, volume managers should have multipath support for the hardware (Multipath target).
|
||||
|
||||
This driver finds the most efficient path to storage devices for reads and writes (I/O Path Selector based on the number of in-flight I/Os).
|
||||
|
||||
The next driver is the same as above, but finds the fastest path (I/O Path Selector based on the service time).
|
||||
|
||||
If a physical storage unit on a logical volume is busy, this feature will allow reads/writes to go to another physical volume if possible (I/O delaying target).
|
||||
|
||||
udev can generate events for device-manager actions (DM uevents). udev is a device manager for /dev/.
|
||||
|
||||
To test how software/hardware reacts to logical devices that occasionally fail input/output tasks, enable this debugging feature (Flakey target).
|
||||
|
||||
A logical volume can be created that is a read-only storage unit that validates data for another logical partition (Verity target support).
|
||||
|
||||
NOTE: If you enjoy my articles, click "Like" on my posts if you have a Linux.org account. Also, reshare this article on Google, Twitter, and/or Facebook.
|
||||
|
||||
ConfigFS and the TCM storage engine can be enabled with this setting (Generic Target Core Mod (TCM) and ConfigFS Infrastructure). ConfigFS is a RAM-based filesystem.
|
||||
|
||||
INTERESTING FACT: The Linux kernel does not have a “main()” function. In programs, main() is called by libc which depends on the kernel. The kernel cannot have a main() function because libc would not be able to start the kernel. If the kernel did have a main() function, then we would have a “chicken-or-the-egg” problem – which would come first? Plus, the entry point of the kernel is written in Assembly which does not use the main() function.
|
||||
|
||||
Next, the "TCM/IBLOCK Subsystem Plugin for Linux/BLOCK" can be enabled/disabled.
|
||||
|
||||
Then, the "TCM/FILEIO Subsystem Plugin for Linux/VFS" can be enabled/disabled.
|
||||
|
||||
And again, there are two other TCM features - (TCM/pSCSI Subsystem Plugin for Linux/SCSI) and (TCM Virtual SAS target and Linux/SCSI LDD fabric loopback module).
|
||||
|
||||
The Linux-iSCSI.org iSCSI Target Mode Stack for ConfigFS is provided by this driver (Linux-iSCSI.org iSCSI Target Mode Stack).
|
||||
|
||||
Next, enable/disable the "FireWire SBP-2 fabric module". This allows a computer to connect to another computer and appear to be a hard-drive.
|
||||
|
||||
After that, we can configure "Fusion Message Passing Technology (MPT) device support".
|
||||
|
||||
The first option under that heading is a driver for SCSI support for parallel adapters (Fusion MPT ScsiHost drivers for SPI).
|
||||
|
||||
SCSI can also get support for fiber channel host adapters (Fusion MPT ScsiHost drivers for FC) and/or SAS adapters (Fusion MPT ScsiHost drivers for SAS).
|
||||
|
||||
Next, users can set the "Maximum number of scatter gather entries". A lower number leads to reduced memory consumption per controller instance.
|
||||
|
||||
The next driver offers system ioctl calls to manage MPT adapters (Fusion MPT misc device (ioctl) driver).
|
||||
|
||||
Fiber channel ports can support IP LAN traffic with this driver (Fusion MPT LAN driver).
|
||||
|
||||
I can read your mind – you think there is going to be another article after this. Well, you thought correctly. Keep watching for the next article in this series.
|
||||
|
||||
If you like this article series, please post on Linux.org and/or Google+ telling me how much you like this series and what topics you would like to see covered in future articles. Or, email me (DevynCJohnson@Gmail.com). Mahalo!
|
||||
|
||||
To learn more about the author, check out the links in his signature box below.
|
||||
|
||||
If you have read this article completely, then you should have seen the word "Facebook" three times. If not, you did not read the whole article.
|
||||
|
||||
The word "Facebook" is seen in this paragraph, the paragraph above, and in one of the notes. I bet you read the paragraph above without finishing this article trying to find the third instance of the word.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-13.4714/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,118 +0,0 @@
|
||||
18 The Linux Kernel: Configuring the Kernel Part 14
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.566/)
|
||||
|
||||
Aloha! Ready for another cool article on the Linux kernel?
|
||||
|
||||
Next, in our long quest, we can enable/disable the "Fusion MPT logging facility". MPT stands for Message Passing Technology. The Fusion driver is made by LSI Logic Corporation. MPT is a specific messaging tactic used between process. This technique is synchronous meaning that process will wait for messages as needed.
|
||||
|
||||
After that, the "FireWire driver stack" should be enabled if the computer possesses FireWire ports. If not, then there is no point in enabling FireWire ports for a device that could not use such drivers. FireWire is a lot like USB. The differences lie in the protocols, speed, and the physical shape and layout of the ports. Generally, Apple devices use FireWire and USB. Some PCs have FireWire ports, but this is less common than USB ports.
|
||||
|
||||
Some FireWire controllers use the OHCI-1394 specification (OHCI-1394 controllers). If so, enable this driver.
|
||||
|
||||
To use FireWire storage devices, enable this next driver (Storage devices (SBP-2 protocol)). This driver provides a protocol that the FireWire storage units use to communicate with the FireWire bus (the card with the attached FireWire ports). Some FireWire scanners also need this driver.
|
||||
|
||||
IPv4 can be used on FireWire ports (IP networking over 1394). IEEE 1394 or simply "1394" is FireWire. Multicasting over FireWire using IPv4 has limitations.
|
||||
|
||||
Nosy is the traffic monitor for FireWire PCILynx cards (Nosy - a FireWire traffic sniffer for PCILynx cards).
|
||||
|
||||
Next, the I2O devices can be supported (I2O device support). Intelligent Input/Output (I2O) bus uses drivers for the hardware and operating system levels. The hardware drivers (HDM) are not specific to any operating system while the OS drivers (OSM) must be used on the intended operating system. The OSM communicates with any of the HDMs. I2O cards/buses have an IOP - Input/Output Processor. This speeds up the system since the main CPU is processing less data.
|
||||
|
||||
Only enable "Enable LCT notification" on systems that lack a SUN I2O controller. I2C SUN firmware does not support LCT notifications.
|
||||
|
||||
The Adaptec I2O controllers need this next driver if RAID is intended (Enable Adaptec extensions).
|
||||
|
||||
Direct memory access of 64-bits can be allowed on Adaptec I2O controllers (Enable 64-bit DMA).
|
||||
|
||||
I2O devices can be configured if permitted (I2O Configuration support). This feature is mainly needed for RAID setup.
|
||||
|
||||
The old Input/Output controls can be enabled for I2O devices (Enable ioctls (OBSOLETE)).
|
||||
|
||||
The OSM software for I2O bus adapters can be enabled (I2O Bus Adapter OSM). This set of OSMs are used to find new I2O devices on the other end of the adapter.
|
||||
|
||||
Next, the OSMs for I2O block devices can be enabled (I2O Block OSM). RAID controllers on I2O hardware will need this OSM.
|
||||
|
||||
The following OSM is for the SCSI or FiberChannel devices on I2O controllers (I2O SCSI OSM).
|
||||
|
||||
Information on I2O devices can be read from /proc/ if enabled (I2O /proc support).
|
||||
|
||||
After the I2O features have been enabled/disabled, we can move on to other kernel abilities. Next, we have "Macintosh device drivers". These are only useful to Apple devices. Linux kernels for PCs should not have any of these features enabled. However, as with many statements there is always an exception. Some PC users may use an Apple mouse, keyboard, and/or some other Apple device. Again, it is best to thoroughly understand the need and use of the kernel being developed.
|
||||
|
||||
Next, we have a driver for networking (Network device support). X11 and other Linux software do not depend on this driver, so if the kernel will not need to connect to another computer, Internet, Intranet, or network, then this can safely be disabled.
|
||||
|
||||
The following driver is like above, but is specific to core drivers (Network core driver support).
|
||||
|
||||
Etherchannels are supported by this driver (Bonding driver support). In networking, bonding is the fusion of two or more Ethernet channels. This is also known as trunking.
|
||||
|
||||
A dummy network can be set up in Linux with this driver (Dummy net driver support). A dummy network is a virtual network that is like the /dev/null of networking. Any data sent to this dummy network is gone forever as it would be going to /dev/null. The IP address is not set. The user can define their networking equivalent of /dev/null.
|
||||
|
||||
Next, EQL can be supported (EQL (serial line load balancing) support). This is needed to allow two computers to communicate via two serial connections that use the SLIP or PPP protocol.
|
||||
|
||||
Fiber Channel is a fast serial protocol for connecting storage devices to computers (Fibre Channel driver support).
|
||||
|
||||
The MII transceiver needs this driver (Generic Media Independent Interface device support). MII is an interface for Ethernet with speeds up to 100Mbit/s. These Ethernet cables are intended for connecting to a PHYceiver which is an Ethernet transceiver.
|
||||
|
||||
To group many Ethernet devices via virtual interfaces, the "Ethernet team driver support" is needed.
|
||||
|
||||
"MAC-VLAN support" permits users to have packet maps between a particular MAC address and a certain interface.
|
||||
|
||||
A tap character device can be made from the MAC-VLAN network interface (MAC-VLAN based tap driver). Tap devices get packets from the kernel so they can be sent elsewhere.
|
||||
|
||||
The next feature allows virtual vxlan interfaces that create Layer 2 networks to be placed above Layer 3 (Virtual eXtensible Local Area Network (VXLAN)). This is commonly used for tunneling to virtual systems.
|
||||
|
||||
Messages that the kernel sends on a network can be logged with this feature (Network console logging support). Only enable this if it is important for you to log the network messages. Disabling this feature will enhance performance.
|
||||
|
||||
This feature allows various parameters to be changed (Dynamic reconfiguration of logging targets). Some of these parameters include port numbers, MAC addresses, IP addresses, and some other settings.
|
||||
|
||||
If user space programs are expected to use TAP devices, then enable this driver that will allow such activity (Universal TUN/TAP device driver support).
|
||||
|
||||
This driver is for local Ethernet tunnels (Virtual ethernet pair device).
|
||||
|
||||
The "Virtio network driver" is used with QEMU, Xen, KVM, and other virtual machines.
|
||||
|
||||
Next, "ARCnet support" can be enabled. ARCnet is a Token-Ring-like Local-Area-Network (LAN) protocol. ARCnet stands for "Attached Resource Computer Network".
|
||||
|
||||
Now, we can move on to "ATM drivers". ATM stands for "Asynchronous Transfer Mode". ATM is used for telecommunications.
|
||||
|
||||
The Marvell Ethernet switch needs this driver (Marvell 88E6060 ethernet switch chip support). Also, the chip for such a switch is also needed depending on the model (Marvell 88E6085/6095/6095F/6131 ethernet switch chip support) and (Marvell 88E6123/6161/6165 ethernet switch chip support).
|
||||
|
||||
Now, we can learn about "Ethernet driver support".
|
||||
|
||||
First, we can enable/disable "3Com devices". This then allows kernel developers to choose which 3Com devices to support.
|
||||
|
||||
The next set of options is for various "Adaptec devices" and then later "Alteon devices".
|
||||
These are just device/vendor specific drivers. Generally, these drivers are added as modules.
|
||||
|
||||
After those two sets of options, there is a set for "AMD devices" and again for "Atheros devices".
|
||||
|
||||
NOTE: Keep in mind what type of hardware the kernel will run on. For a large variety of devices, it may be best to add these devices as modules.
|
||||
|
||||
There are various other vendor-specific device drivers - "Cadence devices", "Broadcom devices", "Brocade devices", "Chelsio devices", "Cisco devices", and "Digital Equipment devices". Some other device/vendor specific drivers follow.
|
||||
|
||||
The next driver that is not vendor/device specific is "SLIP (serial line) support". This driver supports SLIP and CSLIP. SLIP (Serial Line Internet Protocol) is an Internet protocol for modems and serial ports. PPP is now used instead of SLIP. CSLIP is Compressed SLIP.
|
||||
|
||||
Next, "CSLIP compressed headers" can be enabled which compresses the TCP/IP headers. CSLIP is faster than SLIP, but to be able to use CSLIP, both the transmitting computer and the receiving computer must be able to understand CSLIP.
|
||||
|
||||
When using SLIP on bad analogue lines, then it may be a good idea to enable "Keepalive and linefill" which will help to keep the connection alive.
|
||||
|
||||
For running IP on poor-quality networks or are 7-bit, it may help to enable and use "Six bit SLIP encapsulation".
|
||||
|
||||
Now, we can move on to the popular USB system, but these are the USB drivers for networking.
|
||||
|
||||
The first USB network device to enable/disable is "USB CATC NetMate-based Ethernet device support". This is for 10Mbps USB Ethernet EL1210A chip devices. The USB device will act and appear to be an Ethernet device even though the hardware is USB.
|
||||
|
||||
Next, this driver is the same as above except this is for devices with the KLSI KL5KUSB101B chipset (USB KLSI KL5USB101-based ethernet device support).
|
||||
|
||||
The Pegasus USB devices are USB-to-Ethernet adapters/converters (USB Pegasus/Pegasus-II based ethernet device support).
|
||||
|
||||
Next, there is another USB-to-Ethernet driver (USB RTL8150 based ethernet device support).
|
||||
|
||||
In the next article, we will continue to configure the USB networking system.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-14.4765/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,122 +0,0 @@
|
||||
19 The Linux Kernel: Configuring the Kernel Part 15
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.578/)
|
||||
|
||||
Aloha! In this article of the Linux kernel series, we are still configuring drivers for USB networking. Then, we will move on to input devices.
|
||||
|
||||
First, we can enable/disable the "Multi-purpose USB Networking Framework" which allows connecting laptops to desktop systems.
|
||||
|
||||
Next, the ASIX USB-to-Ethernet adapter driver can be enabled/disabled (ASIX AX88xxx Based USB 2.0 Ethernet Adapters).
|
||||
|
||||
Then, there is another ASIX adaptor driver (ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet).
|
||||
|
||||
NOTE: Generally, it is best to add adapter drivers as modules.
|
||||
|
||||
The Communication Device Class specification is offered in the driver (CDC Ethernet support (smart devices such as cable modems)). This specification is for USB modems. The Linux system recognizes this USB networking interface as an Ethernet interface and will be designated as "ethX" where "X" is the Ethernet device number.
|
||||
|
||||
Next is a specification similar to the above (CDC EEM support). CDC EEM stands for Communication Device Class Ethernet Emulation Model.
|
||||
|
||||
The CDC Network Control Model (NCM) also has a driver that offers the specification (CDC NCM support).
|
||||
|
||||
The driver providing the CDC MBIM (Mobile Broadband Interface Model) specification is also available for the Linux kernel (CDC MBIM support).
|
||||
|
||||
Next, there are several vendor/device specific drivers for various USB networking devices and chipsets.
|
||||
|
||||
After those, there is a generic driver for USB network devices that do not require any special drivers (Simple USB Network Links (CDC Ethernet subset)).
|
||||
|
||||
Again, there are some more drivers for device/vendor specific devices.
|
||||
|
||||
FUN FACT: Linux was used to make the special effects for the movie "Titanic" by James Cameron.
|
||||
|
||||
"CDC Phonet support" is for USB Nokia modems that use Phonet.
|
||||
|
||||
Now, we can move on to Wireless LAN drivers which use the 802.11 specification.
|
||||
|
||||
Mainly, there is a list of vendor/device specific drivers.
|
||||
|
||||
"SoftLED Support" controls the LEDs that are associated with the Wifi cards/devices.
|
||||
|
||||
Some chipsets support SDIO as seen by this driver (Atheros ath6kl SDIO support). SDIO is an extension of the Secure Digital specification for wireless SD cards. SDIO stands for Secure Digital Input/Output.
|
||||
|
||||
Kernel developers may also notice that some wireless devices can support QoS. QoS stands for Quality of Service. This feature gives network transmissions priority. Assume two sets of data need to be sent over a network. Only one can go first. QoS will send the most important data first.
|
||||
|
||||
FUN FACT: Technically, Linux is not an operating system. Linux is the kernel while GNU/Linux is the operating system.
|
||||
|
||||
The "Generic HDLC layer" is needed for WAN cards. HDLC stands for High-Level Data Link Control. This is a data link layer protocol.
|
||||
|
||||
Raw HDLC can be used with the "Raw HDLC support" driver enabled.
|
||||
|
||||
The "Raw HDLC Ethernet device support" driver allows the HDLC layer to emulate Ethernet.
|
||||
|
||||
|
||||
The cHDLC driver offers a HDLC extension also called Cisco HDLC (Cisco HDLC support).
|
||||
|
||||
The Linux kernel also has a driver for "Frame Relay support" for HDLC. Frame Relay is a Layer 2 protocol.
|
||||
|
||||
HDLC can also support PPP (Synchronous Point-to-Point Protocol (PPP) support) and X.25 (X.25 protocol support).
|
||||
|
||||
Next, this driver offers Frame Relay the ability to use DLCI (Frame Relay DLCI support).
|
||||
|
||||
The "LAPB over Ethernet driver" creates a device file that permits the user to make a LAPB point-to-point connection to another computer via Ethernet. The device file is usually /dev/lapb0 for the first of such device.
|
||||
|
||||
X.25 frames can be sent over telephone lines with this driver (X.25 async driver). Specifically, this driver allows X.25 to use asynchronous serial lines.
|
||||
|
||||
A special driver is needed for ISA SBNI12-xx cards (Granch SBNI12 Leased Line adapter support). These cards are inexpensive substitutes for leased line modems.
|
||||
|
||||
The next driver allows parallel connections to carry scheduled traffic (Multiple line feature support). This allows the Linux system to more efficiently manage parallel connection on SBNI12 adapters. Some Linux users claim this driver doubles their speed. However, I have never tested this to know for myself.
|
||||
|
||||
Next, "IEEE 802.15.4 drivers" can be configured. This is for slow WAN devices. This is a standard that controls the media and physical layers of the wireless network. This specification uses different frequencies in different continents. For example, in Europe, such wireless devices will use the 868.0-868.6MHz frequency.
|
||||
|
||||
The first setting in this category is for a fake LR-WPAN driver (Fake LR-WPAN driver with several interconnected devices). LR-WPAN stand for Low-Rate Wireless Personal Area Network.
|
||||
|
||||
FUN FACT: Only about 2% of the current kernel was written by Linus Torvalds.
|
||||
|
||||
The vmxnet3 virtual Ethernet used by VMware requires this driver (VMware VMXNET3 ethernet driver). When making a kernel for a large number of users, it is best to enable this as a module because someone may want to use the Ethernet on VMware.
|
||||
|
||||
The Hyper-V virtual network needs this driver (Microsoft Hyper-V virtual network driver). You may be wondering if this is the same Hyper-V virtual network by Microsoft. It is and yes, Linux supports Hyper-V.
|
||||
|
||||
The digital telephone service, ISDN, is supported by this driver (ISDN support). ISDN stands for Integrated Services Digital Network. In France, ISDN is known as RNIS which stands for Réseau numérique à intégration de services. With an ISDN adapter, a computer can start and accept voice calls. This allows computers to be used as answering machines or some other telephone service device. ISDN can also carry video information.
|
||||
|
||||
Now, we can move on to input devices (Input device support). These are devices that give the computer information. Mice and keyboards are the most commonly used and known input devices. Scanners are another example of input devices.
|
||||
|
||||
First, there is a driver that supports various haptic/tactile feed-back devices (Support for memoryless force-feedback devices). For instance, many game controllers vibrate which is haptic/tactile feed-back.
|
||||
|
||||
Some input devices check on the status of the hardware (Polled input device skeleton). Such behavior requires this driver.
|
||||
|
||||
Input devices that use sparse keymaps need this driver (Sparse keymap support library). A keymap is the layout information for keyboards.
|
||||
|
||||
Next, this is another keymap (Matrix keymap support library).
|
||||
|
||||
NOTE: When making a kernel for a broad user group, include most or all input devices as modules because the developer usually does not know what type of devices the users may plugin to the computer.
|
||||
|
||||
FUN FACT: A Vanilla Kernel is a Linux kernel in its original, unchanged state.
|
||||
|
||||
The "Mouse interface" makes two different device files for the mouse. The two device files are /dev/input/mouseX and /dev/input/mice.
|
||||
|
||||
This next driver makes a psaux device file that is an alias to /dev/input/mice (Provide legacy /dev/psaux device). The psaux device file is /dev/psaux.
|
||||
|
||||
If the system has a digitizer, then the horizontal resolution needs to be set (Horizontal screen resolution) and then the vertical resolution (Vertical screen resolution). A digitizer is the type of touch-screen that supports touch-pens that allow users to draw. Other touch-screens cannot support such complex input.
|
||||
|
||||
The next driver supports joysticks and gamepads (Joystick interface). This driver creates the /dev/input/jsX files.
|
||||
|
||||
The "Event interface" driver allows input devices to be accessible via /dev/input/eventX.
|
||||
|
||||
The "Event debugging" driver outputs all input events to the system's log. Do not enable this for any reason other than debugging systems. Obviously, for performance reasons, but the main reason I recommend this be disabled is for security purposes. All key-presses are plainly logged including passwords.
|
||||
|
||||
Next, a list of various keyboard drivers are listed for configuration (Keyboards) followed by mouse drivers (Mice) and then joystick/gamepad drivers (Joysticks/Gamepads).
|
||||
|
||||
After that, various drivers for specific tablet hardware/vendors are listed (Tablets). After that is the driver list for "Touchscreens".
|
||||
|
||||
The last set of input device drivers is a list of miscellaneous drivers for specific hardware and vendors (Miscellaneous devices).
|
||||
|
||||
The next article of this series will discuss input ports. Do not forget to read the other articles of this series and this website. Mahalo!
|
||||
|
||||
**NOTE TO FANS: Thank you** for all of your kind emails telling me how much you all love these articles.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-15.4793/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,118 +0,0 @@
|
||||
20 The Linux Kernel: Configuring the Kernel Part 16
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.587/)
|
||||
|
||||
Welcome to the next Linux kernel article. In this article, we will discuss the input/output ports.
|
||||
|
||||
First, the "i8042 PC Keyboard controller" driver is needed for PS/2 mice and AT keyboards. Before USB, mice and keyboards used PS/2 ports which are circular ports. The AT keyboard is an 84-key IBM keyboard that uses the AT port. The AT port has five pins while the PS/2 port has six pins.
|
||||
|
||||
Input devices that use the COM port (sometime called RS232 serial port) will need this diver (Serial port line discipline). The COM port is a serial port meaning that one bit at a time is transferred.
|
||||
|
||||
The TravelMate notebooks need this special driver to use a mouse attached to the QuickPort (ct82c710 Aux port controller).
|
||||
|
||||
Parallel port adapters for PS/2 mice, AT keyboards, and XT keyboards use this driver (Parallel port keyboard adapter).
|
||||
|
||||
The "PS/2 driver library" is for PS/2 mice and AT keyboards.
|
||||
|
||||
"Raw access to serio ports" can be enabled to allow device files to be used as character devices.
|
||||
|
||||
Next, there is a driver for the "Altera UP PS/2 controller".
|
||||
|
||||
The PS/2 multiplexer also needs a driver (TQC PS/2 multiplexer).
|
||||
|
||||
The ARC FPGA platform needs special driver for PS/2 controllers (ARC PS/2 support).
|
||||
|
||||
NOTE: I want to make it clear that the PS/2 controllers that are discussed in this article are not Sony's game controllers for their PlayStation. This article is discussing the 6-pin mouse/keyboard ports. The controller is the card that holds the PS/2 ports.
|
||||
|
||||
The "Gameport support" driver offers support for the 15-pin gameport. Gameport was the 15-pin port used by many input gaming devices until the invention of the USB port.
|
||||
|
||||
The next driver is for gameports on ISA and PnP bus cards (Classic ISA and PnP gameport support). ISA stands for Industry Standard Architecture and was a parallel bus standard before PCI. PnP stands for Plug-and-Play and was a common standard before ISA.
|
||||
|
||||
"PDPI Lightning 4 gamecard support" provides a driver for a proprietary gamecard with gameports.
|
||||
|
||||
The SoundBlaster Audigy card is a proprietary gameport card (SB Live and Audigy gameport support).
|
||||
|
||||
|
||||
The ForteMedia FM801 PCI audio controller has a gameport on the card (ForteMedia FM801 gameport support). This driver only supports the gameport.
|
||||
|
||||
Next, we can move on to "Character devices". Character devices transfer data character by character.
|
||||
|
||||
First, TTY can be enabled or disabled (Enable TTY). Removing TTY will save a lot of space, but TTY is needed for terminals and such. Unless you know what you are doing, do not disabled TTY.
|
||||
|
||||
NOTE TO MY FANS: If you know of a reason for disabling TTY, could you post the answer below and share with us. Mahalo!
|
||||
|
||||
Next, support for "Virtual terminals" can be enabled/disabled. Again, a lot of space can be saved, but virtual terminals are very important.
|
||||
|
||||
This next driver supports font mapping and Unicode translation (Enable character translations in console). This can be used to convert ASCII to Unicode.
|
||||
|
||||
Virtual terminals can be used as system consoles with this driver (Support for console on virtual terminal). A system console manages the logins and kernel messages/warnings.
|
||||
|
||||
Virtual terminals must channel through a console driver to interact with the physical terminal (Support for binding and unbinding console drivers). Before the virtual terminal can do so, the console driver must be loaded. When the virtual terminal is closed, the console terminal must be unloaded.
|
||||
|
||||
The next driver provides support for Unix98 PTY (Unix98 PTY support). This is Unix98 pseudo terminal.
|
||||
|
||||
FUN FACT: The Linux kernel allows a filesystem to be mount many times in many places at once.
|
||||
|
||||
Next, "Support multiple instances of devpts" can be supported. The devpts filesystem is for pseudo-terminal slaves.
|
||||
|
||||
Legacy support for PTY can also be enabled (Legacy (BSD) PTY support).
|
||||
|
||||
The max amount of legacy PTYs in use can be set (Maximum number of legacy PTY in use).
|
||||
|
||||
The next driver can be used to offer support to serial boards that the other drivers fail to support (Non-standard serial port support).
|
||||
|
||||
Next, there are some drivers for specific boards and cards.
|
||||
|
||||
The GSM MUX protocol is supported with this driver (GSM MUX line discipline support (EXPERIMENTAL)).
|
||||
|
||||
The next driver enables the kmem device file (/dev/kmem virtual device support). kmem is usually used for kernel debugging. kmem can be used to read certain kernel variables and states.
|
||||
|
||||
The Stallion cards have many serial ports on them (Stallion multiport serial support). This driver specifically supports this card.
|
||||
|
||||
Next, we can move on to drivers for serial devices. As stated before, serial devices transfer one bit at a time.
|
||||
|
||||
The first driver is for standard serial port support (8250/16550 and compatible serial support).
|
||||
|
||||
Plug-and-Play also exists for serial ports with this driver (8250/16550 PNP device support).
|
||||
|
||||
The following driver allows the serial ports to be used for connecting a terminal to be used as a console (Console on 8250/16550 and compatible serial port).
|
||||
|
||||
Some UART controllers support Direct Memory Access (DMA support for 16550 compatible UART controllers). UART stands for Universal Asynchronous Receiver/Transmitter. UART controllers convert serial to parallel and vice versa.
|
||||
|
||||
Next, this driver offers support for standard PCI serial devices (8250/16550 PCI device support).
|
||||
|
||||
16-bit PCMCIA serial devices are supported by this driver (8250/16550 PCMCIA device support). Remember, PCMCIA is a PC-card that is usually used in laptops.
|
||||
|
||||
The maximum number of supported serial ports can be set (Maximum number of 8250/16550 serial ports) and then the maximum that are registered during boot-up (Number of 8250/16550 serial ports to register at runtime).
|
||||
|
||||
For extended serial abilities like HUB6 support, enable this driver (Extended 8250/16550 serial driver options).
|
||||
|
||||
A special driver is needed to support more than four legacy serial ports (Support more than 4 legacy serial ports).
|
||||
|
||||
Serial interrupts can be shared when this driver is used (Support for sharing serial interrupts).
|
||||
|
||||
Serial port IRQs can be autodetected using this driver (Autodetect IRQ on standard ports).
|
||||
|
||||
RSA serial ports are also supported by the Linux kernel (Support RSA serial ports). RSA stands for Remote Supervisor Adapter. RSA is an IBM-specific hardware.
|
||||
|
||||
Next, there are various vendor/device specific divers.
|
||||
|
||||
This is a TTY driver that uses printk to output user messages (TTY driver to output user messages via printk). Printk (print kernel) is a special piece of software that usually prints the boot-up messages. Any string that is displayed by printk is usually put in the /var/log/messages file. The shell command "dmesg" displays all strings that were used by printk.
|
||||
|
||||
Next, we can enable/disable support for parallel printers (Parallel printer support).
|
||||
|
||||
The next driver allows a printer to be used as a console (Support for console on line printer). This means kernel messages will be literally printed at the printer. Normally when the word "print" was used in this article series, it meant putting data on the screen. This time, this literally means putting the data on paper.
|
||||
|
||||
The following driver makes the device files at /dev/parport/ (Support for user-space parallel port device drivers). This allows some processes to access.
|
||||
|
||||
Again, the Linux kernel has many features and drivers, so we will discuss more drivers in the next article. Mahalo!
|
||||
|
||||
NOTE TO FANS: We are getting close to the end of the configuration process. I still have a list of all of the suggested Linux kernel topics that many of you wanted to know about. Some of the topics include installing the kernel, managing modules, adding 3rd-party drivers, and all of the other very interesting suggestions and requests.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-16.4835/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,136 @@
|
||||
Translating----------------geekpi
|
||||
|
||||
21 The Linux Kernel: Configuring the Kernel Part 17
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.605/)
|
||||
|
||||
Aloha! This next article will cover various drivers.
|
||||
|
||||
First, the "virtio console" is a virtual console that is used with hypervisors.
|
||||
|
||||
The "IPMI top-level message handler" is a message manager for the IPMI system. IPMI stands for Intelligent Platform Management Interface. IPMI is an interface for managing the system via network without using a shell.
|
||||
|
||||
"/dev/nvram support" permits the system to read and write memory in the real time clock's memory. Generally, this feature is used for saving data during a power loss.
|
||||
|
||||
The next driver supports the Siemens R3964 packet protocol (Siemens R3964 line discipline). This is a device-to-device protocol.
|
||||
|
||||
Now, we can move on to PCMCIA character devices. However, most of the drivers here are vendor/device specific.
|
||||
|
||||
The RAW driver allows block devices to be bound to the device files /dev/raw/rawN (RAW driver (/dev/raw/rawN)). The advantage to this is efficient zero-copy. However, most software will still prefer to access the storage through /dev/sd** or /dev/hd**.
|
||||
|
||||
Next, the maximum number of RAW devices can be supported is set.
|
||||
|
||||
The following driver makes the device file /dev/hpet (HPET - High Precision Event Timer).
|
||||
|
||||
NOTE: Many of you may be wondering why enabling these device file matter. Well, these device files serve as an interface between the software and hardware.
|
||||
|
||||
The HPET timers can be mapped with this driver (Allow mmap of HPET). Mapping is the process of making a list of address in memory of devices and files. The files can then be found faster by getting the address from the memory and then commanding the hard-drive to get the data from the address.
|
||||
|
||||
|
||||
The "Hangcheck timer" is used to detect whether of not the system has locked-up.
|
||||
This timer watches for locked-up processes. As soon as a process freezes, a timer starts. After the timer goes off, if the process has not restarted or closed, then the timer will force the process to close.
|
||||
|
||||
Linus Torvalds Quote: Portability is for people who cannot write new programs.
|
||||
|
||||
The TPM security chip that uses Trusted Computing Group's specification will need this driver (TPM Hardware Support).
|
||||
|
||||
Now, we can move on to I2C devices. I2C stands for Inter-Integrated Circuit and is spoken as "eye two see". However, some people say "eye squared see". I2C is a serial bus standard.
|
||||
|
||||
Some old software used I2C adapters as class devices, but software now does not do that (Enable compatibility bits for old user-space). So, this driver will offer backwards compatibility for older software.
|
||||
|
||||
Next, the I2C device files can be made (I2C device interface).
|
||||
|
||||
I2C can support multiplexing with this driver (I2C bus multiplexing support).
|
||||
|
||||
I2C can support GPIO-controlled multiplexing with this driver (GPIO-based I2C multiplexer).
|
||||
|
||||
Various tests can be performed on I2C and SMBus with this driver for developers (I2C/SMBus Test Stub).
|
||||
|
||||
The I2C system will produce debugging messages with this feature enabled (I2C Core debugging messages).
|
||||
|
||||
The next driver produces additional I2C debugging messages (I2C Algorithm debugging messages).
|
||||
|
||||
Linus Torvalds Quote: The main reason there are no raw devices [in Linux] is that I personally think that raw devices are a stupid idea.
|
||||
|
||||
The following driver will cause the I2C drivers to produce debugging messages (I2C Bus debugging messages).
|
||||
|
||||
Next, we have Serial Peripheral Interface support (SPI support). SPI is a synchronous serial protocol used on SPI buses.
|
||||
|
||||
After that, there is a driver for High speed synchronous Serial Interface support (HSI support). HSI is a synchronous serial protocol.
|
||||
|
||||
PPS can also be supported by the Linux kernel (PPS support).
|
||||
|
||||
The "IP-over-InfiniBand" driver allows IP packets to be transported over InfiniBand.
|
||||
|
||||
After that, there is a debugging driver for IP-over-InfiniBand (IP-over-InfiniBand debugging).
|
||||
|
||||
SCSI's RDMA protocol can also travel over InfiniBand (InfiniBand SCSI RDMA Protocol).
|
||||
|
||||
There is also an extension for the iSCSI protocol to transmit over InfiniBand (iSCSI Extensions for RDMA (iSER)).
|
||||
|
||||
Sometimes, errors occur in the core system that the whole system must know (EDAC (Error Detection And Correction) reporting). This driver sends the core errors to the system. Generally, such low-level errors are reported in the processor and then seen by this driver to let other system processes know about or handle the error.
|
||||
|
||||
This driver provides legacy support for EDAC to use older versions of sysfs (EDAC legacy sysfs).
|
||||
|
||||
EDAC can be set to send debugging information to the logging system of Linux (Debugging).
|
||||
|
||||
Linus Torvalds Quote: Nobody actually creates perfect code the first time around, except me.
|
||||
|
||||
The Machine Check Exceptions (MCEs) are converted to a readable form via this driver (Decode MCEs in human-readable form (only on AMD for now)).
|
||||
MCEs are hardware errors detected by the CPU. MCEs usually trigger kernel panics.
|
||||
|
||||
The decoding process for MCE to a readable form can be injected to test error handling (Simple MCE injection interface over /sysfs).
|
||||
|
||||
The next driver allows errors to be detected in memory and then corrected (Main Memory EDAC (Error Detection And Correction) reporting).
|
||||
|
||||
Next, there are many drivers that detect and correct errors on specific hardware sets.
|
||||
|
||||
Linus Torvalds Quote: Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
|
||||
|
||||
Now, we can move on to the "Real Time Clock". This is commonly abbreviated "RTC". The RTC keeps track of time.
|
||||
|
||||
![](http://www.linux.org/attachments/rtc-png.606/)
|
||||
|
||||
The next setting allows us to make the Linux system use the time from the RTC as the time on the "wall clock" (Set system time from RTC on startup and resume). The wall clock is the clock on the desktop or the time seen using the "date" command.
|
||||
|
||||
Alternately, the wall clock can get the time from an NTP server and then sync with the RTC (Set the RTC time based on NTP synchronization).
|
||||
|
||||
Some systems have more than one RTC, so the user must set which is the default (RTC used to set the system time).
|
||||
It is best to make the first one (/dev/rtc0) the primary clock.
|
||||
|
||||
Debugging abilities can be set for the RTC system (RTC debug support).
|
||||
|
||||
The RTC can use various interfaces for giving the operating system the current time. Using sysfs will require this driver (/sys/class/rtc/rtcN (sysfs)) while using proc will require this driver (/proc/driver/rtc (procfs for rtcN)). Special RTC character devices can be made and used (/dev/rtcN (character devices)). The shell command "hwclock" uses /dev/rtc, so the RTC character devices are needed.
|
||||
|
||||
The next driver allows interrupts of the RTC to be emulated on the /dev/ interface (RTC UIE emulation on dev interface). This driver reads the clock time and allows the new time to be retrieved from /dev/.
|
||||
|
||||
The RTC system can be tested with the test driver (Test driver/device).
|
||||
|
||||
Next, we will discuss the Direct Memory Access system.
|
||||
DMA is the process of hardware accessing the memory independently of the processor. DMA increases system performance because the processor will have less to do if the hardware is performing more tasks for itself. Otherwise, the hardware would be waiting for the processor to complete the task.
|
||||
|
||||
The debugging engine is for debugging the DMA system (DMA Engine debugging).
|
||||
|
||||
Next, there are many vendor/device specific drivers for DMA support.
|
||||
|
||||
Some DMA controllers support big endian reading and writing with this driver (Use big endian I/O register access).
|
||||
|
||||
Big endian refers to the arrangement of the binary code. The number system used in English speaking countries places the largest end of the number on the left. For example, in the number 17, the most left numbers place is the tens place which is larger than the ones place. In big endian, each byte is arranged with the largest portion on the left. A byte is eight bits. Example: 10110100. Each place has a value of 128, 64, 32, 16, 8, 4, 2, and 1 respectively. So the byte mentioned converts to the decimal number 180.
|
||||
|
||||
The DMA system can use the network to reduce CPU usage (Network: TCP receive copy offload).
|
||||
|
||||
The "DMA Test Client" is used for testing the DMA system.
|
||||
|
||||
In the next article, we will discuss the display/video drivers. Mahalo!
|
||||
|
||||
REFERENCE: The quotes from Linus Torvalds came from this site: [http://en.wikiquote.org/wiki/Linus_Torvalds][1]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-17.4875/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://en.wikiquote.org/wiki/Linus_Torvalds
|
@ -0,0 +1,31 @@
|
||||
Ubuntu vs. openSUSE: Weighing different styles of corporate control
|
||||
================================================================================
|
||||
*Ubuntu and openSUSE approach their Linux distros in much different ways. Which do you prefer?*
|
||||
|
||||
It's no secret that a rather large portion of Linux development is funded by companies with a financial interest in seeing Linux be improved. (And, by "Linux," I mean "All the various pieces and parts that make up a complete Linux-based system.") But there is a pretty major difference between how various companies go about that.
|
||||
|
||||
Let's take a look at two high-profile examples: Ubuntu and openSUSE.
|
||||
|
||||
Both are distributions of Linux. Both are large, long-standing and highly successful projects with a large community of both volunteers and paid workers. Yet the difference between the two is fairly extreme, and highly important.
|
||||
|
||||
For Ubuntu, the primary direction is set by the team at Canonical and its head-master, Mark Shuttleworth. Examples such as Unity (Ubuntu's in-house user interface) and Mir (Ubuntu's in-house display server) quickly jump to mind when talking about how Canonical really “steers the ship” of Ubuntu. Goals, projects and priorities put into place by the parent company are, in many cases, simply non-negotiable (so to speak). Ubuntu's Unity user interface, for example, was a must-have for Canonical as it was part of their broader strategy. Some community members love it. Some hate it. But, either way, it's happening.
|
||||
|
||||
But is that bad? I'm not really convinced that it is either good or bad. It's simply how it is with that particular project and company.
|
||||
|
||||
Contrast that with openSUSE, who also has a "corporate master" in the form of, well, SUSE. The key difference there being that SUSE has a commercial offering in the form of "SUSE Linux Enterprise." And, while there is a great deal of technical overlap between openSUSE (the community Linux distro) and SUSE Linux Enterprise (the commercial offering)...the two are not, technically, the same.
|
||||
|
||||
Which means that SUSE, as a company, can afford to take a more “hands-off” approach to working with openSUSE. Sure, they have a vested interest in seeing key bits of technology (such as, say, Btrfs) be improved, tested and packaged with the community distro – as they may wish to include it in the commercial offering – but the separation between the community and commercial systems provides them with a bit more flexibility, in this regard, than Canonical presently has.
|
||||
|
||||
This is similar to the way Red Hat works with the Fedora project, and seems to be a generally successful approach as a mechanism for a company that sells enterprise-level Linux systems to utilize a community Linux distro as a foundation.
|
||||
|
||||
I'll be honest. I see benefits and drawbacks to both models. Both have their challenges in terms of organization and management (and public perception). And, in all reality, there is more in common than not with the two approaches.
|
||||
|
||||
I'd love to hear your thoughts on this. Do you prefer to have a singular captain at the helm of your community-based Linux distro (sort of a "benevolent dictator")? Or do like the big decisions of your Linux distro to be a bit more community-driven? Should companies behind a given flavor of Linux rule with an iron fist, or be more hands-off? Leave your thoughts in the comments.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.networkworld.com/community/node/84250
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,117 +0,0 @@
|
||||
ncdu – Ncurses Based Disk Usage Utility
|
||||
================================================================================
|
||||
uts a few days back, we discussed [gt5][1] (a graphical front-end to du). Continuing with this series of du alternatives, today we will discuss a ncurses based disk usage utility that can be run on a remote server set-up which does not have a graphical environment. The command line utility we are about to discuss is **ncdu**.
|
||||
|
||||
### ncdu – Ncurses Based du Alternative ###
|
||||
|
||||
The command line utility ncdu is nothing but a curses based version of the standard du command. It helps to quickly view the disk usage statistics of a system even if there is no graphical environment installed on it.
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-main.png)
|
||||
|
||||
### Testing Environment ###
|
||||
|
||||
- OS – Ubuntu 13.04
|
||||
- Shell – Bash 4.2.45
|
||||
- Application – ncdu 1.9
|
||||
|
||||
### A Brief Tutorial ###
|
||||
|
||||
Here are some of the examples of ncdu command :
|
||||
|
||||
**1. The Default Output**
|
||||
|
||||
Just execute the **ncdu** command and you’ll observe that first it scans the disk and then displays the disk usage of various directories in descending order.
|
||||
|
||||
Here is an example :
|
||||
|
||||
**> Scanning**
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-0.png)
|
||||
|
||||
**> Output**
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-1.png)
|
||||
|
||||
So you can see that a disk usage table is displayed in the output. If you want to scan complete file system, use the -x option with ncdu utility.
|
||||
|
||||
**2. Get More Information On Selected Directory By Pressing i**
|
||||
|
||||
As you can see that the first entry is selected by default. To know more details related to a selected entry, just press i.
|
||||
|
||||
Here is an example :
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-2.png)
|
||||
|
||||
So you can see that the information like Path, Type, Disk Usage, Apparent size etc. were displayed. To get rid of this window, just press i again.
|
||||
|
||||
**3. Delete A Directory From Within The ncdu Interface**
|
||||
|
||||
To delete a directory from within the ncdu interface, just select the entry and press d.
|
||||
|
||||
Here is an example :
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-3.png)
|
||||
|
||||
So you can see that ncdu asks for a confirmation from the user. If you press yes, the directory will be deleted from the system.
|
||||
|
||||
**4. Show Percentage Of Total Disk Consumption By Each Directory**
|
||||
|
||||
Press g to display percentage of total disk consumption by each directory.
|
||||
|
||||
Here is an example :
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-4.png)
|
||||
|
||||
So you can see that percentage consumption of total disk for each entry is displayed in the second column of output.
|
||||
|
||||
**5. Get Help Regarding All The Available Hot Keys**
|
||||
|
||||
Press ? to get help related to hot keys, format information and ncdu version related information.
|
||||
|
||||
Here are some help snapshots :
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-5-1.png)
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-5-2.png)
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-5-3.png)
|
||||
|
||||
For command line options and other information, go through the [man page of ncdu command][2].
|
||||
|
||||
### Download/Install/Configure ###
|
||||
|
||||
Here are some of the important links related to ncdu command :
|
||||
|
||||
- [Home Page][3]
|
||||
- [Download Link][4]
|
||||
|
||||
Alternatively, ncdu can also be downloaded by command line managers like apt-get , yum etc. Additionally, Ubuntu users can use Ubuntu Software Centre to download this utility.
|
||||
|
||||
### Pros ###
|
||||
|
||||
- Quick access to a lot of information
|
||||
- Light on resources
|
||||
|
||||
### Cons ###
|
||||
|
||||
- Doesn’t come pre-installed on most of the Linux distributions
|
||||
- Has a bit of learning curve associated with it.
|
||||
|
||||
### Conclusion ###
|
||||
|
||||
If you are not satisfied with the standard du command and are looking for a fast, ncurses based du-like utility then try out ncdu. It provides lots of customization options. You’ll definitely like it.
|
||||
|
||||
**Have you ever used ncdu, gt5 or any other du-like utility? Share your experience with us.**
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://mylinuxbook.com/ncdu-ncurses-based-disk-usage-utility/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://mylinuxbook.com/gt5-a-graphical-alternative-to-du/
|
||||
[2]:http://linux.die.net/man/1/ncdu
|
||||
[3]:http://dev.yorhel.nl/ncdu
|
||||
[4]:http://dev.yorhel.nl/ncdu
|
@ -0,0 +1,50 @@
|
||||
10年 Xen:从恐龙进化到鸟类
|
||||
================================================================================
|
||||
Xen Hypervisor 项目原来是上世纪90年代末[剑桥大学][1] [Xenoserver][2] 项目的子项目。Xenoserver 有一个宏大的目标。
|
||||
|
||||
这个宏大目标就是建立一个大规模的分布式计算系统的公共基础框架。想像一下,当 Xenoserver 执行平台布署在全世界范围内,所有人都可以共享可执行代码,代码贡献者可以按代码被执行时产生的硬件消耗收取一定的费用。这将会鼓励负载均衡、消除单点瓶颈,甚至可以在这个平台上实现营利。
|
||||
|
||||
在今天,这种模式被称为“云计算”。而 Xen Hypervisor (确切来说是现在的 Xen Hypervisor)是最大的云平台。不仅亚马逊 Web 服务(AWS)和 Rackspace 公有云是基于 Xen 的,就连最近的大规模云平台[Verizon公有云][3]也将 Xen 作为他们的服务供应者。
|
||||
|
||||
### 10周岁生日快乐 ###
|
||||
|
||||
2003年10月21日,Xen Hypervisor 在[第19届 ACM 计算机原理研讨会][4]上作为一个开源项目首次出现在大众眼前。距今刚好过10年,在这里祝 Xen 项目生日快乐!
|
||||
|
||||
### 业界第一的劣势:像恐龙一样,不适者淘汰 ###
|
||||
|
||||
有时候在自己领域内成为第一个开源项目是一个劣势,为什么这样说?缺少与同行的交流会导致项目失去控制。简单的例子是,缺乏竞争会引发自满情绪,而这种情况已经在 Xen 项目内部发生了!开始几年 Xen 项目未受到任何约束,变得狭隘,不再寻求突破,致使用户和开发者不再对它感兴趣。当它的第一个竞争对手 KVM 出现并壮大,Xen 社区甚至对此反应迟缓。
|
||||
|
||||
这种反应带来的后果是,用户难以加入这个项目,并且这个项目不能很好地与 Linux 内核、QEMU及 Linux 发布版共处。然后,Xen 社区名声变坏。然后,Canonical 和 RedHat 抛弃 Xen,投向 KVM 怀抱。Xen 项目向这个不断改变的世界宣告了自己的失败。名声不断变臭,到后来它被视为开源社区界的恐龙,被彻底淘汰只是时间问题。
|
||||
|
||||
### 快速转型:从恐龙进化到鸟类 ###
|
||||
|
||||
像 Xen 一样能够从众多错误中回过神来的开源项目并不多,而 Xen 通过一系列措施做到了这一点。提出有效的管理方法、努力与其他开源项目合作、重启市场营销力量、踏踏实实与用户和开发者一起工作,这些努力终于让 Xen 获得新生。换句话说,Xen 已经完成从恐龙到鸟类的进化。如果你想知道我们是如何做到这点的,何不加入到我的 Linux 大会欧洲站的课题[Xen 项目:收获的教训][5]?其他你可能感兴趣的课题有[加强你的 Xen 云的安全][6]和[Xen:专为云设计的开源虚拟机管理程序][7]。
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/Xen-flying-Panda.jpg)
|
||||
|
||||
*展翅高飞(或者说,给 Xen 这只行动缓慢的熊猫插上翅膀)*
|
||||
|
||||
### 展望未来:虚拟化技术的新领域 ###
|
||||
|
||||
如果你正在搜索 Xen 项目,你会发现它的社区形式多样并且还在发展。从很多方面来说,它甚至比从前巅峰时期发展得更好。
|
||||
|
||||
现在 Xen 社区正在发生一些有意思的事情,一些 Xen 项目下的软件被用于非传统虚拟化技术。这也相应地为 Linux 社区增加了企业用户。在本周晚些时候开始的[Xen 项目开发者峰会][8]中我们将会见到两个安卓虚拟机如何运行在基于 Xen 的 Nexus 10 中,也会见到首次将 Xen 用于车载信息娱乐系统以及汽车应用系统中,同时我们还能见到 Xen 如何为诸如防火墙和NAT服务器这些中间体提供高性能应用。
|
||||
|
||||
当然,服务器虚拟化和云计算还有很长的路要走。展翅高飞吧(或者说,给 Xen 这只行动缓慢的熊猫插上翅膀)。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.com/news/enterprise/cloud-computing/743330-10-years-of-xen-transforming-a-dinosaur-into-a-bird/
|
||||
|
||||
译者:[bazz2](https://github.com/bazz2) 校对:[校对者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
|
@ -51,7 +51,9 @@
|
||||
|
||||
---
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
via: http://www.makeuseof.com/tag/3-ways-to-access-and-use-cloud-storage-skydrive-etc-in-linux/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[jasminepeng](https://github.com/jasminepeng)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
|
@ -1,36 +0,0 @@
|
||||
每日Ubuntu小技巧 - 改变侧边栏图标大小
|
||||
================================================================================
|
||||
这里有一些其他的小技巧给新Ubuntu用户。这一系列的小技巧是为了帮助新Ubuntu用户轻松地配置和管理他们的电脑。这不是面向专家用户的,只是为了那些刚刚开始使用Ubuntu的用户。
|
||||
|
||||
Ubuntu启动器是Ubuntu Unity桌面的关键部分。启动器是一个布满图标的垂直条,当你登陆的时候,他就会放在屏幕的左边栏。它允许你方便地打开或者启动来自你桌面的程序。它也提供了快捷链接到应用,工作空间,可移动设备和垃圾桶。
|
||||
|
||||
默认情况下,这个启动器图标大小被设置为48为较小的屏幕。如果你需要调大或调小启动器的尺寸,那么请继续接下来的学习。
|
||||
|
||||
这里有许多你想调整Unity启动器的原因。一个好的原因是需要调整它到适应更小的屏幕。如果你的屏幕很小,默认尺寸也不合适,那么你就需要改变它了。
|
||||
|
||||
如果默认图标尺寸太小,就需要增大它,那么调整启动器去增大图标使他们容易点击。
|
||||
|
||||
开始吧,点击右上角的齿轮按钮弹出菜单条,点击系统设置(System Settings...),如下图。
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/09/ubuntulockscreendisable3.png)
|
||||
|
||||
接下来,选择 外观(Appearance)
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/09/unitylauncherubuntu.png)
|
||||
|
||||
最后,使用滚动条来调整(增大\减小)启动器的图标尺寸。
|
||||
|
||||
![](http://www.liberiangeek.net/wp-content/uploads/2013/09/unitylauncherubuntu1.png)
|
||||
|
||||
这个改变会被自动应用。记住,如果你想要继续作用默认尺寸,移动到48.
|
||||
|
||||
这是另一个为Ubuntu新用户的小技巧。继续回来发现更多的Ubuntu小技巧。如果你一个老手,想要做出贡献,请在下面留下意见。
|
||||
|
||||
享受吧!
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tips-resize-ubuntu-unity-launcher/
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
译者:[Vic___](http://blog.csdn.net/vic___) 校对:[校对者ID](https://github.com/校对者ID)
|
@ -1,66 +0,0 @@
|
||||
KayGuoWhu翻译中
|
||||
使用安卓设备控制你的Linux PC
|
||||
================================================================================
|
||||
**下面的教程会指导所有的Linux使用者如何在系统上安装SSH,以便通过安卓智能手机远程访问他们的电脑。**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004-2.jpg)
|
||||
如今我们所有人都拥有一台平板或出触屏手机,我们经常使用它们在深夜里看电影或电视秀,听歌或者阅读一本好书。你可以把这篇文章称作是为那些在大晚上因为太过疲惫而懒得去开启他们电脑上的某些应用程序,移动、删除,复制或重命名某些文件,甚至关掉PC的懒人们准备的教程。
|
||||
|
||||
的确,已经有各种各样的远程桌面解决方案,但是许多方案费用很高,或者实现效果很糟糕,无法像预期一样运行,迫使你最终还是得去电脑上做你原本想做的事情。
|
||||
|
||||
在这个教程里面,我们将使用一种简单、安全、高效的协议,它被称为SSH (Secure Shell),很容易从默认的软件仓库中安装(在Arch linx中是openssh,在Ubuntu中时openssh-server)。
|
||||
|
||||
### 配置SSH服务器 ###
|
||||
|
||||
在安装完成后,你需要为SSH服务器进行基本配置。为此,你需要使用文本编辑器编辑/etc/ssh/sshd_config这个文件。
|
||||
|
||||
1.在文件尾部添加下面一行(yourusername的地方会被你的Linux机器上真实的用户名代替)
|
||||
|
||||
AllowUsers yourusername
|
||||
|
||||
2.取消"#PermitRootLogin"这行注释,把"no"替换成"yes":
|
||||
|
||||
PermitRootLogin no
|
||||
|
||||
3.为了安全起见,你需要修改SSH 连接默认的port 22端口到一个更大编号的端口,譬如在我们的例子中是55441
|
||||
(但不要使用55441,这是初始的,找另一个四位或者五位数字)。因此,取消注释并编辑"#Port 22"如下:
|
||||
|
||||
Port 55441
|
||||
|
||||
### 开启SSH服务器###
|
||||
|
||||
在Ubuntu上,SSH服务通过下面的命令启动:
|
||||
|
||||
sudo /etc/init.d/ssh start
|
||||
|
||||
当你每次修改上述配置文件时,都需要通过下面的命令重启:
|
||||
|
||||
sudo /etc/init.d/ssh restart
|
||||
|
||||
在Arch Linux上,你可以使用下面的命令启动SSH服务:
|
||||
|
||||
sudo systemctl start sshd
|
||||
|
||||
### 配置安卓设备上的SSH客户端###
|
||||
|
||||
JuiceSSH似乎是安卓上最好的SSH客户端之一,而且是免费的。同时,如果你认为它的功能不好,可以花费少量的资金去获取更多高级的特性,譬如亚马逊 AWS/EC2 集成,团队协作,以及更多其它的特性。
|
||||
|
||||
一旦软件安装完毕,开启它,然后你会要求输入一个加密的密码以保证安全连接的安全。这个密码由WES-256进行加密,因此除非你的设备被偷,否则没有人能够获取他们。
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_001.jpg)
|
||||
|
||||
现在,添加一个新连接,选择名称,你的电脑的IP地址,上面设定的端口号和一个需要被创建的身份。
|
||||
|
||||
![](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)
|
||||
|
||||
这就是我的Arch Linux盒子,可以通过我的安卓平板上的JuiceSSH客户端访问到。如果在这个教程中你遇到问题,请在下面进行评论。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004.shtml
|
||||
|
||||
译者:[KayGuoWhu](https://github.com/KayGuoWhu) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,41 @@
|
||||
如何在Ubuntu 13.10上安装Linux内核 3.12
|
||||
================================================================================
|
||||
|
||||
**Ubuntu 13.10 的用户不必再用羡慕的眼神看着新版Linux内核发布,他们也可以相对轻松地更新他们的系统。**
|
||||
|
||||
Canonical公司一贯的做法是,在整个开发周期中始终使用一个Linux内核。例如,Ubuntu 13.10始终基于Linux内核 3.11,但现在已经推出一个新的稳定的Linux内核3.12。
|
||||
|
||||
Ubuntu用户只有等到14.04 LTS发布以后,才能得到一个较新版本的Linux内核,但到那之前他们也可以选择安装新的版本。
|
||||
|
||||
不过,我们必须从一开始就提醒你。Canonical不建议你更新官方渠道以外的Linux内核版本。这不是一个完全安全的过程,你以后可能会遇到问题,甚至系统故障。但另一方面,你的系统性能可能会得到提升。
|
||||
|
||||
你将要下载的内核来自Canonical公司,这意味着它已经在.deb格式。你不需要再自己编译。打开一个终端,导航到Downloads文件夹,输入以下命令:
|
||||
|
||||
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
如果你有一个32位的操作系统,你也可以下载32位版本。可见只需替换链接中的64bit为32bit即可,[点此下载][1].
|
||||
|
||||
现在,你将像运行任何其它程序一样运行这些.deb文件。在你下载软件包的同一个终端,输入下面的命令(你需要root权限才能正常运行):
|
||||
|
||||
sudo dpkg -i linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
sudo dpkg -i linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
此过程结束后,你需要重启系统。瞧,新版本的Linux内核更新成功。好消息是,旧版本内核仍然存在,如果你要删除3.12版的内核,只需使用众所周知命令。
|
||||
|
||||
sudo apt-get purge linux-image-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
sudo apt-get linux-headers-3.12.0-031200-generic_3.12.0-031200.201311031935_amd64.deb
|
||||
|
||||
记住,以上所示的文件名变化很快。如果无法下载,请更新新的链接。
|
||||
开始享受Linux 3.12内核吧!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
来源于: http://news.softpedia.com/news/How-to-Install-Linux-Kerrnel-3-12-in-Ubuntu-13-10-397013.shtml
|
||||
|
||||
译者:[coolpigs](https://github.com/coolpigs) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-saucy/
|
@ -0,0 +1,54 @@
|
||||
如何在Ubuntu13.10中安装最新版的NVIDIA驱动
|
||||
===
|
||||
|
||||
**有时候新版本的NVIDIA驱动安装会成为一个问题,尤其是你不习惯Linux系统中事情运作的方式时。**
|
||||
|
||||
![](http://i1-news.softpedia-static.com/images/news2/How-to-Install-the-Latest-NVIDIA-331-20-Drivers-in-Ubuntu-13-10-399182-2.jpg)
|
||||
|
||||
在这个手册中将教给大家的,帮助普通用户也能用最新的NVIDIA驱动331.20中获益。
|
||||
|
||||
在Ubuntu系统中有许多方法安装NVIDIA驱动,有容易的也有困难的方法。容易的方法也是最为直截了当的,但是你需要能够连接网络。这种方法也会把你带入PPA的美妙世界中去。
|
||||
|
||||
Ubuntu 13.10像它的前辈们一样,有一个很大的软件仓库可供使用,但是Canonical的开发者们由于种种考虑并不上传最新版的驱动。其中考虑最多的是开发者们担心最新版的驱动可能不够稳定。
|
||||
|
||||
幸运的是,我们有PPA可供使用,PPA中有最新版的驱动程序可供使用,而且里面的驱动会在官方放出新驱动一两天后就添加进去。只需在终端中敲入一下命令即可(当然你需要拥有root权限):
|
||||
|
||||
sudo add-apt-repository ppa:xorg-edgers/ppa
|
||||
sudo apt-get update
|
||||
sudo apt-get install nvidia-331
|
||||
|
||||
假如你已经安装了一个老版本的驱动,你需要用**sudo apt-get dist-upgrade**命令替换上面命令中的最后一条命令。
|
||||
|
||||
完成这些步骤之后重启你的电脑,新驱动就安装好了。在下一次NVIDIA更新驱动时,你就不用再添加PPA而只需更新系统就可以了。
|
||||
|
||||
第二种方法有点复杂,但是你可以不需联网(你需要先把驱动下载下来,但是你在安装的时候不再需要联网)。我们将使用64位版本的驱动最为例子讲解。
|
||||
|
||||
你必须按Ctrl+Alt+F1组合键进入真正的终端(译注:原文中为虚拟终端,但实际上按这个组合键进入的是真正的终端),然后使用用户名和密码登陆。接下俩,你需要用cd命令进入你放置驱动的位置(例如下载目录)然后输入以下命令:
|
||||
|
||||
sudo service lightdm stop
|
||||
sudo chmod a+x NVIDIA-Linux-x86_64-331.20.run
|
||||
sudo ./NVIDIA-Linux-x86_64-331.20.run
|
||||
sudo reboot
|
||||
|
||||
这样就搞定了。无论你选择使用什么方法,享受你的最新版的NVIDIA驱动吧。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/How-to-Install-the-Latest-NVIDIA-331-20-Drivers-in-Ubuntu-13-10-399182.shtml
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
@ -0,0 +1,107 @@
|
||||
OpenVPN 安全手册[part 1]
|
||||
================================================================================
|
||||
一直以来,我们在互联网上传输信息时,都谨慎地为这些信息加密,以防内容泄露出去,特别是在政府的干预下,为网络上每个字节都进行加密已经变得空前重要了。在这种情况下,OpenVPN 是保障网络信息安全的首选。今天我们就来学习一下如何架设 OpenVPN,使你可以在任何场所都能安全地访问家里的服务器。
|
||||
|
||||
VPN 小贴士:很多商业的 VPN 根本不值它们的售价,它们的安全性只比通过 SSL 保护的网站高一点点,原因是它们的安全意识还不够强,认为世上所有人都是值得信任的。而一个真正意义上的 VPN 认为在充满危险的互联网上只存在两个值得信任的终端 —— 即真正要建立连接的那两个。用户不能随便找一台 PC 机就能登录进 VPN,因为你的 VPN 如果能被随随便便的一台 PC 登录进来,不管它们建立的连接有多么安全,这都称不上是一件好事情。所以你必须在你的客户端和服务器端都要好好地配置一下 VPN 服务。
|
||||
|
||||
### OpenVPN 快速入门 ###
|
||||
|
||||
你需要两台不同子网下的计算机,比如一台连着光缆的 PC 和一台连着 Wifi 的 PC(或者是 VitualBox 虚拟机上的多台客户机),并且你要知道它们的 IP 地址。这里分别为这两台计算机命名为“Studio”和“Shop”,都给它们安上 OpenVPN。OpenVPN 支持大多数 Linux 发行版,所以你只要用你手头的安装包管理软件就行。本文的包管理器是 Debian、Ubuntu 以及它们的衍生版中使用的 apt-get,下面安装 OpenVPN:
|
||||
|
||||
$ sudo apt-get install openvpn openvpn-blacklist
|
||||
|
||||
上面的步骤安装了 OpenVPN 服务器和一个用于检查外泄密钥的黑名单的程序。请务必安装这个黑名单检查器,因为有一次 Debian 发布了一个[有漏洞的 OpenSSL 软件][1],这个软件里的随机码生成器会产生不可信任的密钥 —— 产生的这些密钥不是真正的随机数,它们可以被预测到。这件事发生在2008年,当时所有使用了这个软件的人都需要修改他们这个不是秘密的密钥。即使5年过去了,我们还是建议使用这个黑名单检查器 —— 这是份廉价的保险。
|
||||
|
||||
现在让我们试着为两台 PC 机创建一个不加密的通道。首先互 ping 一下确保它们能连通,然后让 OpenVPN 处于关闭状态(别着急,我们会在后面手动启动它):
|
||||
|
||||
$ ps ax|grep openvpn
|
||||
|
||||
如果 openvpn 这个后台进程存在,那就 kill 了它。这里假设“Studio”这台 PC 的 IP 是192.168.1.125,“Shop”的 IP 是192.168.2.125。现在在“Studio”端开启一个未加密的连接到“Shop”端:
|
||||
|
||||
$ sudo openvpn --remote 192.168.2.125 --dev tun0 --ifconfig 10.0.0.1 10.0.0.2
|
||||
|
||||
然后开一个从“Shop”到“Studio”的连接:
|
||||
|
||||
$ sudo openvpn --remote 192.168.1.125 --dev tun0 --ifconfig 10.0.0.2 10.0.0.1
|
||||
|
||||
连接成功的话你会看到类似下面的信息:
|
||||
|
||||
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”这句话时,说明你的操作成功了。这时你应该能够 ping 通两个隧道的 IP:ping 10.0.0.1 和 ping 10.0.0.2。当你建立隧道的时候,你无需在意你所在的网络,你可以为你的隧道指定任何 IP 地址。关闭隧道请按 Ctrl+c。
|
||||
|
||||
现在你可以利用这个隧道打开一个 SSH 会话了。图1显示了通过 VPN 隧道登录 SSH 的例子,这个图也显示了有趣的 Message of the Day(MOTD)图片,图片来自于博客《[在你的 Linux 系统上放一张奶牛的 MOTD 图片][2]》:
|
||||
|
||||
$ ssh carla@10.0.0.2
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/SSH-OpenVPN.jpg)
|
||||
|
||||
*图1:成功通过 VPN 隧道建立 SSH 会话,并显示了有趣的 MOTD 图片*
|
||||
|
||||
哼哼哈𠯋,它运行得不错。
|
||||
|
||||
### 加密后的 VPN 隧道 ###
|
||||
|
||||
目前为止,我们玩得还不赖,但是没有使用加密技术,一切都毫无意义,所以我们需要建立一个简单的静态密钥配置文件。不像公钥基础设施(PKI),有着根认证中心、可撤消认证等安全措施,我们的加密机制没有那么强悍,但是对于仅仅想远程到家里的用户来说,已经足够了。OpenVPN 有提供创建静态密钥的命令,我们可以建立目录、建立密钥文件,并将文件设为只读模式:
|
||||
|
||||
$ sudo mkdir /etc/openvpn/keys/
|
||||
$ sudo openvpn --genkey --secret /etc/openvpn/keys/static.key
|
||||
$ sudo chmod 0400 /etc/openvpn/keys/static.key
|
||||
|
||||
这是个明文密钥,你可以利用文本编辑器打开密钥文件读取到它,文件名可以随意,不一定非得叫“static.key”。将这个密钥拷到需要通信的两台电脑上,呵呵,这是对称加密,而不是公钥加密。
|
||||
|
||||
现在我们要在两台电脑上完成基本的配置。(在非类 Ubuntu 的系统中,OpenVPN 没有提供默认的配置文件,但是在 /usr/share/doc/openvpn/ 目录下会为你提供一个配置文件的样本。)在我的实验中,“Studio”是服务器端,“Shop”是一台笔记本电脑,用于登录到“Studio”中。我的服务器端的配置文件是 /etc/openvpn/studio.conf,它的配置信息如下:
|
||||
|
||||
# config for Studio
|
||||
dev tun
|
||||
ifconfig 10.0.0.1 10.0.0.2
|
||||
secret /etc/openvpn/keys/static.key
|
||||
|
||||
将配置文件设为只有拥有者有读写权限:
|
||||
|
||||
$ sudo chmod 0600 /etc/openvpn/studio.conf
|
||||
|
||||
客户端的配置文件内容类似,只是多了服务器端的 IP 地址:
|
||||
|
||||
# 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
|
||||
|
||||
注意 ifconfig 那行的 IP 地址的顺序,本地的 IP 要放在远程的 IP 之前。现在启动服务器端的 OpenVPN,指定服务器端配置文件,客户端操作雷同:
|
||||
|
||||
$ sudo openvpn /etc/openvpn/studio.conf
|
||||
$ sudo openvpn /etc/openvpn/shop.conf
|
||||
|
||||
成功建立连接后,你还会看到“Initialization Sequence Completed”这句话,但你不会再看到这句 WARNING(这句话会在你建立了未加密的隧道时出现):
|
||||
|
||||
******* WARNING *******: all encryption and authentication features disabled
|
||||
|
||||
### 防火墙和动态 IP 地址 ###
|
||||
|
||||
OpenVPN 本身是比较容易配置的,最麻烦的是处理防火墙和动态 IP 地址。防火墙种类众多,对于如何配置防火墙不拦截你的隧道,我把这个话题当作家庭作业留给你自己解决:P。OpenVPN 的端口是1194,你可以在防火墙上设置一个转发规则,用于将消息转发到你的目标服务器。
|
||||
|
||||
接下来处理另一件麻烦事:动态 IP 地址。[Dyn.com][3]可以提供一个廉价的方法,为你管理 ISP 分配给你的动态 IP,或者你也可以向你的 ISP 支付一笔费用,从而得到一个静态 IP。
|
||||
|
||||
至此,你可以宣告工作完成了,接下来的任务就是手动开启服务器端的 OpenVPN,让它一直运行在那里,等待你的登录。你可以将你的笔记本拿到外面,并随时随地随心所欲地连接到服务器。然而,关于 OpenVPN 的操作,我还有一些重要的知识点要讲,比如如何为 OpenVPN 设置开机启动,如何利用 Network Manager 自动建立连接,以及这篇 OpenVPN 教程中最重要的一块:如何访问你的远程服务器上的资源。我们下周见。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.com/learn/tutorials/743590-secure-remote-networking-with-openvpn-on-linux
|
||||
|
||||
译者:[bazz2](https://github.com/bazz2) 校对:[校对者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/
|
@ -0,0 +1,54 @@
|
||||
如何在linux上通过GRUB添加内核参数
|
||||
================================================================================
|
||||
|
||||
我们可以在linux内核启动时为其提供各种各样的参数。这些参数可以自定义内核默认的行为,或者通知内核关于硬件的配置信息。内核参数应在内核启动时通过引导装载程序如GRUB或LILO传递给内核。
|
||||
|
||||
在本教程中,我将会描述**如何在linux上通过GRUB添加内核参数**。
|
||||
|
||||
如果你在使用GRUB引导装载程序,想修改或添加内核参数,你可以编辑GRUB配置文件。下面是针对特定发行版在GRUB的配置文件中添加内核启动参数的方法。
|
||||
|
||||
### 在Debian或Ubuntu上添加内核启动参数###
|
||||
|
||||
在基于Debian的系统上,如果你想在系统启动时添加内核参数,你可以编辑 /etc/default/grub 目录下的GRUB配置模板。在 GRUB_CMDLINE_LINUX_DEFAULT 变量中以 “name=value” 的格式添加内核参数。
|
||||
|
||||
$ sudo -e /etc/default/grub
|
||||
|
||||
> GRUB_CMDLINE_LINUX_DEFAULT="...... name=value"
|
||||
|
||||
然后运行下面的命令来生成一个GRUB的配置文件。
|
||||
|
||||
$ sudo update-grub
|
||||
|
||||
如果无法找到 update-grub 命令,你可以通过下面的命令安装它。
|
||||
|
||||
$ sudo apt-get install grub2-common
|
||||
|
||||
### 在Fedora上添加内核启动参数 ###
|
||||
|
||||
在Fedora上,想要在启动时添加内核参数,你可以编辑 /etc/default/grub目录下的 GRUB 配置模板。在 GRUB_CMDLINE_LINUX 变量中以 “name=value” 的格式添加内核参数。
|
||||
|
||||
$ sudo -e /etc/default/grub
|
||||
|
||||
> GRUB_CMDLINE_LINUX="...... name=value"
|
||||
|
||||
然后运行下面的命令生成 GRUB2 配置文件。
|
||||
|
||||
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
|
||||
|
||||
### 在CentOS上添加内核启动参数 ###
|
||||
|
||||
在CentOS上,想要在启动时添加内核参数,你可以直接编辑GRUB配置文件 /boot/grub/grub.conf。在配置文件中,找到描述默认使用的Linux映像的条目。文件中最顶行的字符串 “default=N”会指示哪一个条目是默认的映像。
|
||||
|
||||
[![](http://farm8.staticflickr.com/7429/10618657834_8082c2806b_z.jpg)][1]
|
||||
|
||||
找到默认的映像条目后,在以 “kernel /vmlinuz-” 开头的那一段的结尾附加上内核参数。参数的格式为 “name=value” 。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/add-kernel-boot-parameters-via-grub-linux.html
|
||||
|
||||
译者:[Linchenguang](https://github.com/Linchenguang) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.flickr.com/photos/xmodulo/10618657834/
|
@ -1,118 +0,0 @@
|
||||
一步步安装Ubuntu 13.10服务版
|
||||
|
||||
================================================================================
|
||||
|
||||
昨天对于Canonical和Ubuntu粉丝来说是一个值得庆祝的日子.不错,在漫长六个月的有效开发,Ubuntu 13.10 桌面版&服务版,Lubuntu 13.10, kubuntu 13.10终于可以下载了!.
|
||||
|
||||
你可以会先看看我们现有的指南:
|
||||
|
||||
- >>> [pUbuntu 13.10 has been released | Installation instructions with screenshots][1]
|
||||
|
||||
- >>> [How to upgrade from Ubuntu 13.04 Raring to Ubuntu 13.10 Saucy Salamander][2]
|
||||
|
||||
- >>> [Top things to do after installing Ubuntu 13.10 Saucy Salamander][3](注:这个文章我们翻译过,可以把链接改成我们发布的地址,发布的时候删除包括括号在内的这些文字)
|
||||
|
||||
上面都是是佷棒的文章,我们想再添加一个关于**Ubuntu 13.10服务版的安装**的指南.就是这样.
|
||||
|
||||
下载最新的版本**[Ubuntu 13.10 服务版][4]**.用最新的Ubuntu 13.10服务版镜像引导你的服务器.你将会看到类似下面的显示.
|
||||
|
||||
选择您需要的语言.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server1.png)
|
||||
|
||||
点击安装Ubuntu服务版.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server2.png)
|
||||
|
||||
选择安装语言.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server3.png)
|
||||
|
||||
选择你的国家.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server4.png)
|
||||
|
||||
配置区域设置.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server5.png)
|
||||
|
||||
检测键盘布局.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server6.png)
|
||||
|
||||
选择键盘布局.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server7.png)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server8.png)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server9.png)
|
||||
|
||||
输入你的服务器主机名.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server10.png)
|
||||
|
||||
输入用户名.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server11.png)
|
||||
|
||||
设置用户密码.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server12.png)
|
||||
|
||||
如果你想加密用户主目录,选择Yes,否则选择No.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server13.png)
|
||||
|
||||
选择分区方案.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server14.png)
|
||||
|
||||
开始安装.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server15.png)
|
||||
|
||||
如果在你的网络上有代理服务,输入代理服务的IP地址.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server16.png)
|
||||
|
||||
选择安装安全更新,然后回车.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server17.png)
|
||||
|
||||
选择要安装的软件.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server18.png)
|
||||
|
||||
点击Yes安装Grub引导装载程序.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server20.png)
|
||||
|
||||
安装完成以后.选择继续重启服务器.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server21.png)
|
||||
|
||||
登入Ubuntu服务器.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server22.png)
|
||||
|
||||
输入用户名和密码登入.
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server23.png)
|
||||
|
||||
![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Server24.png)
|
||||
|
||||
这就是这次的指南.现在你的Ubuntu 13.10 服务版已经启动运行了.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/install-ubuntu-server-13-10-step-step/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[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/
|
@ -0,0 +1,35 @@
|
||||
米科·哈普宁:开源软件使世界更安全
|
||||
================================================================================
|
||||
安全专家米科·哈普宁(Mikko Hypponen)于上周在爱丁堡举行的[LinuxCon and CloudOpen Europe][1]会议上的主题演讲中说:"开源软件可以作为一个方法来打击全球监视无辜居民的行为。"
|
||||
|
||||
![](http://www.linux.com/images/stories/41373/Mikko-Hypponen-3.jpg)
|
||||
|
||||
*米科·哈普宁,芬兰F-Secure的首席研究员,在爱丁堡举行的LinuxCon and CloudOpen Europe 2013会议上讲话。*
|
||||
|
||||
计算和全球网络增加的进步使得存储和传输数据变得便宜且简单。哈普宁说这创造了无比的连通性、进步和创新。但是同样使得大规模的数据被访问到就像NSA的棱镜项目演示的那样,这事件随着前美国政府员工爱德华·斯诺登(Edward Snowden)泄漏的一系列顶级机密文件而公开。
|
||||
|
||||
哈普宁,芬兰F-Secure的首席研究员说:"前几年我们已经意识到数据是廉价的。我们永远不必再删除任何数据。这促成了很多伟大的事情但同样也引发了大规模地毯式的监视。"
|
||||
|
||||
哈普宁说:"这些监视会访问我们的个人数据,包括电话记录、地理位置、电子邮件和搜索引擎请求,有些可能是被授权的。"
|
||||
|
||||
他说:"我相信一些监控是好的。如果有有一项研究来找出校园枪击者或者毒枭或者恐怖组织成员等等。我们应该已经有技术手段这么做。但是我们首先必须必须持有怀疑。"
|
||||
|
||||
哈普宁说:"但是收集通信和每个人的个人数据不仅是对隐私的侵犯还是对民主的威胁。"
|
||||
|
||||
他说:"即使你如今对政府认为没问题,但是我们不知道政府会在今后的20年怎么样。如果他们有你20年的搜索数据,他们会找出一些非法的或者令人尴尬的理由来扭曲你的手。"
|
||||
|
||||
哈普宁说:"虽然泄漏事件使得一些IT专家质疑他们的数据存储的安全性和经由美国服务商的的路由,但避免这些公司和服务不能解决问题。同样不能每个国家都花费和金钱来建造他们自己的替代品。"
|
||||
|
||||
哈普宁说:"要跨越国际边际地工作,开发者应该团结起来建造一个安全和可靠的软件和服务来放置后门篡改和用户隐私。"
|
||||
|
||||
他说:"我建议开源软件对这个问题提供一个解决方案。那么国家就不必独自工作。这将会变得安全、开放和免费。"
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.com/news/featured-blogs/200-libby-clark/745585-mikko-hypponen-open-source-software-will-make-the-world-more-secure
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://events.linuxfoundation.org/events/linuxcon-europe
|
109
translated/Options in Linux RPM Command to Query Packages.md
Normal file
109
translated/Options in Linux RPM Command to Query Packages.md
Normal file
@ -0,0 +1,109 @@
|
||||
用来查询安装包的Linux RPM选项
|
||||
================================================================================
|
||||
RPM是RedHat的包管理器,用来安装/卸载/升级和查询基于RedHta Linux的安装包。RHEL和基于它的系统使用rpm命令这么做。以下是一些例子来演示rpm的查询和展示你可以用不同的方法来查询rpm数据库和还原配置文件。
|
||||
|
||||
我已经包含了SSH包在示例命令中。
|
||||
|
||||
### 查询RPM数据库和包 ###
|
||||
|
||||
**1、 在整个RPM数据库中查询,使用下面的命令**
|
||||
|
||||
# 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、 你可以确定在上面的例子中有哪些SSH包已经安装通过grep命令**
|
||||
|
||||
# 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
|
||||
|
||||
输出显示了一些关于SSH的包但是你仍需确定哪个包真正安装了SSH。为了更近一步,请看下面的示例。
|
||||
|
||||
**3、 检查已安装的SSH包 a) 通过sshd守护进程 b) 通过它的配置文件**
|
||||
|
||||
|
||||
# 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
|
||||
|
||||
如你所见ssh是通过openssh-server-5.3p1-84.1.el6.x86_64包安装的,你可以在守护进程或者配置文件中使用rpm -qf命令。两者都会输出包从哪里安装。
|
||||
|
||||
**4、 现在你有了包名,你可能想要探索更多并想要知道包中包含了哪些不同的文件。这种情况下,使用rpm -ql命令**
|
||||
|
||||
# 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
|
||||
|
||||
上面的输出显示了所有该包在系统中安装的文件。现在让我们更进一步,我们只想要看到该包提供的配置文件和文档。
|
||||
|
||||
**5、 只显示配置文件,使用rpm -qc命令**
|
||||
|
||||
# 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、 只列出文件,使用rpm -qd命令**
|
||||
|
||||
# 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
|
||||
|
||||
考虑一种情况你想要配置一个服务,但是你不知道哪里找到配置文件。举例来说,考虑上面的例子:使用**rpm -qf rpm -qf /etc/init.d/sshd**来找出 **/etc/ssh/sshd_config**这个文件源于哪个包。这应该会给你显示**openssh-server-5.3p1-84.1.el6.x86_64**包。使用**rpm -ql openssh-server-5.3p1-84.1.el6.x86_64**来显示包中所含的所有文件。如你所见,许多文件名显示了出来,但是输出并不非常有用。
|
||||
|
||||
现在使用**rpm -qc openssh-server-5.3p1-84.1.el6.x86_64** 来只显示这个包的配置文件。这只会显示4个文件并给出了[/etc/ssh/sshd_config file][1]的绝对路径来开始配置服务。
|
||||
|
||||
**7、 从PRM包还原配置文件,而不重新安装包。**
|
||||
|
||||
如果由于一些原因文件损坏或者从系统中删除了,你可以以**rpm -qf**开头来找出文件存在于哪个包。接下来使用**rpm2cpio | cpio -idmv**来从包中解压出文件。考虑ssh的例子。
|
||||
|
||||
假设**/etc/ssh/sshd_config**文件已经删除并且你不希望重装ssh,按以下步骤来还原文件。
|
||||
|
||||
* 使用rpm -qf /etc/init.d/sshd 这个命令会显示文件来自于openssh-server-5.3p1-84.1.el6.x86_64包。
|
||||
|
||||
* 从它的源中下载Openssh的rpm包。
|
||||
|
||||
* 复制openssh-server-5.3p1-84.1.el6.x86_64包到/tmp目录或者其他任何你选择的目录。
|
||||
|
||||
* 使用rpm2cpio |cpio -idmv解压包。
|
||||
|
||||
上面步骤中你使用的命令会在/tmp下面创建一个子目录。你现在可以复制到它的原始目录。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://linoxide.com/linux-command/rpm-command-query/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者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/
|
@ -1,18 +1,17 @@
|
||||
Package Management Using YUM In Red Hat Linux
|
||||
================================================================================
|
||||
在红帽Linux中使用YUM包管理器
|
||||
===
|
||||
![](http://linoxide.com/wp-content/uploads/2013/11/yum-package-install.png)
|
||||
|
||||
**Yum** is a utility provided in RHEL based systems to install,remove and search packages. It can do lot more than just installing and removing and that’s what I will demonstrate in this article.
|
||||
**YUM**是RHEL系系统中提供的一个安装,卸载和搜索软件包的工具。它能做的不仅仅是安装、卸载软件包,它能做的还有更多,下面我们将在本文中为你展示。
|
||||
|
||||
Yum installs the package dependencies automatically, for example yum install httpd will install https apache server and it’s required dependencies automatically. Something that is not that easy while installing through rpm. with rpm you have to download all the required dependencies and then install accordingly.
|
||||
YUM可以自动安装软件包的依赖,例如当你使用yum安装http时,它还会自动安装https apache服务以及它依赖的软件包。通过rpm软件包安装时就没有这么方便咯(译注:就是不会自动处理软件包依赖问题咯!),你必须下载所有它依赖的软件包,然后依序安装它们。
|
||||
|
||||
The yum utility fetches the package information from a hosted repository (usually by the OS vendor). A repository is basically a collection of rpm’s that are supposed to work on a particular architecture. For example there would be a separate repository for 32 and 64 bit systems, and same goes with RHEL Version 5 and Version 6. You can host your local repository and configure yum to search,install packages from the local repository. In the following examples I will show you some other stuff we can do with yum rather than install and remove but for the sake of understanding I will use httpd package for exempts on my Amazon EC2 RHEL 6.4 server.
|
||||
yum工具从远端服务器上的软件仓库(通常由系统提供商提供)内获取软件包的信息。一个软件仓库基本上是被认为能在特定架构上运行的一系列rpm软件包的集合。例如,对于32位和64位系统各有一个软件仓库,还有针对RHEL5以及RHEL6的软件仓库。你也可以建立一个本地仓库,配置你的yum让其从你的本地仓库里搜索安装软件包。在接下来的例子中,我将想你展示一些yum除了在安装和卸载软件之外可以做的其它事情。为了理解起见,我将在我的Amazon EC2 RHEL 6.4服务器上使用httpd软件包最为例子。
|
||||
|
||||
### Search package from repository ###
|
||||
###从软件仓库里搜索软件包
|
||||
# yum search httpd
|
||||
|
||||
# yum search httpd
|
||||
|
||||
Loaded plugins: amazon-id, rhui-lb, security
|
||||
Loaded plugins: amazon-id, rhui-lb, security
|
||||
=============================================== N/S Matched: httpd ==========
|
||||
httpd.x86_64 : Apache HTTP Server
|
||||
httpd-devel.i686 : Development interfaces for the Apache HTTP server
|
||||
@ -22,24 +21,24 @@ The yum utility fetches the package information from a hosted repository (usuall
|
||||
mod_dav_svn.x86_64 : Apache httpd module for Subversion server
|
||||
mod_dnssd.x86_64 : An Apache HTTPD module which adds Zeroconf support
|
||||
|
||||
For a more detailed output use the below command:
|
||||
想获得详细的输出信息,可以使用下面的命令:
|
||||
|
||||
# yum provides httpd
|
||||
|
||||
# yum provides httpd
|
||||
|
||||
Loaded plugins: amazon-id, rhui-lb, security
|
||||
Loaded plugins: amazon-id, rhui-lb, security
|
||||
httpd-2.2.15-26.el6.x86_64 : Apache HTTP Server
|
||||
Repo : rhui-REGION-rhel-server-releases
|
||||
Matched from:
|
||||
|
||||
**yum provides */httpd** Searches in yum packages to find the package that contains a httpd.
|
||||
|
||||
### Provide a list of all Package Groups. ###
|
||||
*yum provides httpd*在软件仓库里搜索含有httpd的软件包
|
||||
|
||||
# yum grouplist
|
||||
###提供所有软件组列表
|
||||
|
||||
The above command will show you the installed and available package group. You can install an individual package group with group install option. For example we will install package group PHP Support. This package group contains the required php packages.
|
||||
# yum grouplist
|
||||
|
||||
# yum groupinstall PHP Support
|
||||
以上命令将为你显示已经安装的以及可用的软件组。你可以安装一个的软件组并可对组内软件进行选择。例如,我们将安装一个PHP支持的软件组。这个软件组内包含PHP需要的软件包。
|
||||
|
||||
# yum groupinstall PHP Support
|
||||
|
||||
Loaded plugins: amazon-id, downloadonly, rhui-lb, security
|
||||
Setting up Group Process
|
||||
@ -125,9 +124,9 @@ The above command will show you the installed and available package group. You c
|
||||
|
||||
Complete!
|
||||
|
||||
### Install package using YUM ###
|
||||
###使用YUM安装软件包
|
||||
|
||||
A package can be installed using yum install command as below:
|
||||
可以使用yum命令安装软件包,如下所示:
|
||||
|
||||
# yum install httpd
|
||||
|
||||
@ -168,28 +167,28 @@ A package can be installed using yum install command as below:
|
||||
Installed size: 3.6 M
|
||||
Is this ok [y/N]: y
|
||||
|
||||
As you can see yum added additional packages with httpd installation. This is called the dependency resolution done by yum.
|
||||
如你所见,在安装httpd时yum安装了额外的软件包。这叫做被yum完成的依赖解析。
|
||||
|
||||
If you want yum not to prompt for the [y/N] option. Use **yum install -y httpd**
|
||||
假如你不想让yum弹出[y/N]选项,可以使用**yum install -y httpd**
|
||||
|
||||
**Update an existing package using yum update command.**
|
||||
**使用yum命令更新一个已存在的软件包**
|
||||
|
||||
# yum update httpd
|
||||
Loaded plugins: amazon-id, rhui-lb, security
|
||||
Setting up Update Process
|
||||
No Packages marked for Update
|
||||
|
||||
That means the httpd package is the latest version in the yum’s repository.
|
||||
这意味着你系统中安装的httpd软件包已经是yum软件仓库里的最新版本的了。
|
||||
|
||||
**Update all packages on the server.**
|
||||
**更新系统中所有的软件包**
|
||||
|
||||
# yum update
|
||||
# yum update
|
||||
|
||||
the above command will update all the packages including kernel package to the latest version that means your OS will be updated to the latest provided by RHEL.
|
||||
以上的命令将根系你系统上的所有软件包到最新版本,包括内核软件包,这意味着你的系统更新到了RHEL提供的最新版本了。
|
||||
|
||||
### Download RPM without installing ###
|
||||
###下载RPM软件包但是不安装
|
||||
|
||||
Use yum to download RPM package from RHN or CentOS repository without installing it. You have to install a plugin for yum first to have yum download the rpm only. The utility name is yum-downloadonly and can be installed through yum as below:
|
||||
使用yum从RHEL或者CentOS的软件仓库里下载RPM软件包但是不安装。你首先需要下载一个插件让yum只下载rpm软件包而不安装。插件名字叫downloadonly,可以通过yum安装,如下所示:
|
||||
|
||||
# yum install yum-downloadonly
|
||||
Loaded plugins: amazon-id, rhui-lb, security
|
||||
@ -228,19 +227,19 @@ Use yum to download RPM package from RHN or CentOS repository without installing
|
||||
|
||||
Complete!
|
||||
|
||||
Now you can just download a package from repository without installing it by using this command:
|
||||
现在你就可以从软件仓库里只下载软件包而不安装了,命令如下:
|
||||
|
||||
# yum install httpd-devel –downloadonly
|
||||
# yum install httpd-devel -downloadonly
|
||||
|
||||
By default packages are downloaded to **/var/cache/yum/<arch\>** directory but you can download them a specified location by adding another option to yum command
|
||||
默认情况下软件包会被下载到**/var/cache/yum/<arch\>**目录,但是你可以添加额外选项将其下载到指定位置
|
||||
|
||||
# yum install httpd-devel –downloadonly –downloaddir=/opt
|
||||
# yum install httpd-devel -downloadonly -downloaddir=/opt
|
||||
|
||||
If you have a rpm of a package but you don’t have the dependencies and you do not know where to get that. you can still have yum to install that rpm and get the required dependencies from the repository. Let’s install the httpd-devel-2.2.15-29.el6_4.x86_64 RPM that we just downloaded.
|
||||
假如你有一个rpm软件包但是没有它所依赖的软件包,你不知道到哪去得到它所依赖的软件包。你仍然可以通过yum安装这个rpm软件包然后从软件仓库里得到它所依赖的软件包。让我们安装刚刚下载的httpd-devel-2.2.15-29.el6_4.x86_64 RPM软件包。
|
||||
|
||||
# yum localinstall /opt/httpd-devel-2.2.15-29.el6_4.x86_64.rpm
|
||||
|
||||
Loaded plugins: amazon-id, downloadonly, rhui-lb, security
|
||||
# yum localinstall /opt/httpd-devel-2.2.15-29.el6_4.x86_64.rpm
|
||||
|
||||
Loaded plugins: amazon-id, downloadonly, rhui-lb, security
|
||||
Setting up Local Package Process
|
||||
Examining /opt/httpd-devel-2.2.15-29.el6_4.x86_64.rpm: httpd-devel-2.2.15-29.el6_4.x86_64
|
||||
Marking /opt/httpd-devel-2.2.15-29.el6_4.x86_64.rpm to be installed
|
||||
@ -344,11 +343,11 @@ If you have a rpm of a package but you don’t have the dependencies and you do
|
||||
|
||||
Complete!
|
||||
|
||||
### Removing packages using yum. ###
|
||||
###使用yum卸载软件包
|
||||
|
||||
yum remove Remove a package.
|
||||
格式为yum remove 要卸载的软件包。举例如下:
|
||||
|
||||
# yum remove httpd
|
||||
# yum remove httpd
|
||||
Failed to set locale, defaulting to C
|
||||
Loaded plugins: amazon-id, downloadonly, rhui-lb, security
|
||||
Setting up Remove Process
|
||||
@ -399,9 +398,9 @@ yum remove Remove a package.
|
||||
|
||||
Complete!
|
||||
|
||||
### List all installed packages ###
|
||||
###列出所有安装的软件包
|
||||
|
||||
If you want to list all the installed packages then you can use yum list installed command. This is useful in combination with grep or to check whether a specific package has been installed. This is similar to query installed packages with rpm -qa command.
|
||||
假如你要列出你系统上安装的所有软件包,你可以使用命令yum list installed。这条命令结合grep命令是非常有用的,可以用来检查某个特定的软件包是否已被安装。这与使用rpm -qa命令询问已经安装的软件包相似。
|
||||
|
||||
# yum list installed
|
||||
Loaded plugins: amazon-id, downloadonly, rhui-lb, security
|
||||
@ -427,10 +426,10 @@ If you want to list all the installed packages then you can use yum list install
|
||||
.
|
||||
Output Truncated.
|
||||
|
||||
### List the available repository from which packages are being queried, installed and updated. ###
|
||||
###列出用于搜索、安装和更新软件包的可用软件仓库
|
||||
|
||||
# yum repolist
|
||||
|
||||
# yum repolist
|
||||
|
||||
Loaded plugins: amazon-id, downloadonly, rhui-lb, security
|
||||
repo id repo name status
|
||||
rhui-REGION-client-config-server-6 Red Hat Update Infrastructure 2.0 Client Configuration Server 6 4
|
||||
@ -442,6 +441,6 @@ If you want to list all the installed packages then you can use yum list install
|
||||
|
||||
via: http://linoxide.com/linux-command/package-management-yum-redhat-linux/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,67 @@
|
||||
用这个**漂亮的集成启动程序工具**保存,访问和快速粘贴文本片段Save, Access And Quickly Paste Text Snippets With This Nifty Unity Launcher Tool
|
||||
================================================================================
|
||||
**反复键入特定的信息 - 如电子邮件地址或家庭地址,详细的终端命令,及时发送用户喜爱的电视节目的资讯 - 可是件苦差事。**
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Screen-Shot-2013-10-31-at-13.04.jpg)
|
||||
|
||||
*Snippets – 方便的访问存储的文本的方法*
|
||||
|
||||
谢天谢地,这个世界上有一些工具可以帮助我们(做这些事儿)。
|
||||
|
||||
*‘Snippets’* 是Unity中这样的组件之一。 这是一个简单的启动程序小工具,它让你在一个文件中保存和存储摘下来的内容,然后当你需要的时候从Unity的一个快速列表里复制到剪贴板。
|
||||
|
||||
在有人因为厌恶而想我扔内衣之前,我深知Snippets不是唯一的 – 甚至不是第一个 – 提供这一系列功能的。但是它独特的是通过Unity启动器项目来提供这一系列功能。
|
||||
|
||||
(这个软件具有)非常聪明的特征,它足够简单,提供以下功能:
|
||||
|
||||
- 添加,访问存储在txt文件中的文本段
|
||||
- 在快速列表里查看保存的文本段
|
||||
- 点击文本段就可以复制到剪贴板
|
||||
- 提供了把剪贴板中的内容保存到txt文件的选项
|
||||
|
||||
尽管它不是一个“活(智能)”的剪贴板管理工具 – 它只是列出了你特别添加的项目;它不会列出你最近的剪贴板项目历史,它仍然是一个非常方便的小工具。
|
||||
|
||||
###怎样为Unity安装Snippets###
|
||||
|
||||
想要使用这个漂亮的启动器项目,你需要先安装一个命令行剪贴板工具XClip。点击下面的按钮(链接)从软件中心安装。
|
||||
- [点击以在Ubuntu里安装XClip][1]
|
||||
|
||||
下一步,下载下面的‘Snippets‘压缩文件。这包含了剩余所有的使用这个应用所需要的东西。
|
||||
|
||||
- [Download ‘Snippets’ Unity Launcher Script][2]
|
||||
|
||||
当这个压缩文件下完之后你就可以解压了。进入生成的文件夹,然后按Ctrl+H显示隐藏的文件。移动文件夹‘.snippets-launcher‘到你的主文件夹中。**如果不这么做,这个组件将无法正常工作。**
|
||||
|
||||
下一步是安装启动器项目。这是被一个你刚搬到文件夹里面的脚本关照的,但它不具有可执行的权限(需要安装),因此,我们首先需要关照它一下。
|
||||
|
||||
打开一个新的终端窗口在里面小心的键入下面的命令:
|
||||
|
||||
cd .snippets-launcher/ && chmod +x snippets.sh
|
||||
|
||||
./snippets.sh
|
||||
|
||||
就是这样;Snippets应该已经整装待发了。打开Unity Dash搜索Snippets然后把它拖到启动器上去:
|
||||
|
||||
- 左键点击启动器打开可以添加你的文本段的文本文件
|
||||
- 右键点击启动器上的项目打开快速列表
|
||||
|
||||
快速列表里的选项:
|
||||
|
||||
- 左键点击文本段以添加到剪贴板
|
||||
- 左键点击“日期”可以复制当前日期
|
||||
- 点击“添加剪贴板内容”可以把当前剪贴板中的内容加入到txt文件中
|
||||
- 在添加一个项目到.txt文件后点击“更新启动器”
|
||||
|
||||
更多关于这个懒人的工具信息尽在[Ubuntu论坛][3],在那里它的开发者,“Stinkeye”,会很高兴地提供帮助。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/10/unity-launcher-clipboard-snippets-item
|
||||
|
||||
译者:[crowner](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
|
@ -1,47 +0,0 @@
|
||||
闭源(或者看起来似乎)优于开源的七个缘由
|
||||
================================================================================
|
||||
![](http://opensource.com/sites/default/files/imagecache/image-full-size/images/business/BUSINESS_asusual_deadend.png)
|
||||
|
||||
开源在某些情况下优于开源,看起来似乎挺奇怪的,因为这样的观点来竟然自于OpenLogic的创办人,而该公司专注于在开源领域提供帮助。
|
||||
|
||||
针对闭源……
|
||||
|
||||
**1. 出了问题,不用自己搞定。**
|
||||
|
||||
只要是软件,难保不出问题。要是开源软件出了这事儿,要么你自己,要么某个欠你人情债的工程师,总得有个人要花费时间排除bug。通览代码,求助于开源社区或者开源软件的供应商,通过这些手段来解决问题。
|
||||
但是闭源呢,一旦你确定开发商代码出了问题,ok,你的工作到此为止! 你只需发个文件,等着就行了。
|
||||
当然,可能会等上几个月或者几年,问题才能得到解决,更甚者永远得不到答复。但是除此之外,你还能做什么呢。 把问题踢回去,放松,期待最好的解决方案,仅此而已。
|
||||
|
||||
**2. 不必担心贡献回流到社区。**
|
||||
|
||||
如果用的是开源软件, 很有可能, 你解决了一个bug或者做出了改善,之后你的代码就会进入到社区,随着时间的推移从而帮助测试或者维护。闭源就不同了,你根本用不着给任何人做任何事情。当然,那是因为你接触不到代码,所以也修改不了,但是你可以针对遇到的问题创建自己的解决方案。你可以一直只针对同一个问题,改善再改善,一个版本接着一个版本,至少用不着跟社区打交道,为其他人提供更好的解决方法。
|
||||
|
||||
**3. 你不必考虑开源许可条款及规定事宜。**
|
||||
|
||||
针对开源,你必须遵循所使用的组件的许可条款。例如,想要搞明白Apache软件许可证和GPL之间的区别与联系,是需要花费一定的时间的。使用哪一种许可证取决于你所用的开源组件以及你如何使用这些组件(发布给第三方或者内部使用),据此都有不同的许可证可供应用(可附加到文档中进行说明)。像OpenLogic这样的公司可以很容易地理解并遵守开源许可,但是针对闭源,你大可不必担心这类事情!你的供应商的许可协议把有关软件的所有的权利都收走了,如果没有你的公司的律师明确同意的情况下,打算以独有的方式使用软件几乎是不可能的,想都不要想。当然,你还得对付许可证计数,突如其来的软件合规性审计,随着时间的推移而恶化的条款,几乎难以理解的法律术语,但至少你不必了解如何使用开源组件。
|
||||
|
||||
**4. 你用不着为每个组件在众多选项中进行选择**
|
||||
|
||||
针对数据库,Web服务器,应用服务器,编程语言,图形用户界面框架,类似的方面等等,开源都提供了大量的解决方案。在每一个特定的领域,你都可以找到运用不同的架构方法,使用各种语言构建的健壮的成品。找一款功能相似的工具很容易,这些工具都针对不同的使用场合进行了优化(性能、可扩展性、简洁之间的比较)。为了确信一个工具软件在既定场合下功能够满足需求,可以下载下来,试用一下。使用闭源软件的话,你就用不着对付那么多的选项。你只需要在每个领域探索两三个大厂商提供的产品。如果供应商没有提供免费试用版本,或者很难说服你为试用品买单,甚至签署试用协议,那你就节省时间了。
|
||||
|
||||
**5. 你不必四处找幻灯片**
|
||||
|
||||
如果打算找一些会议简报,架构图表,截图,以及其他软件相关的文档,这需要花费一定的时间。使用开源软件,你得读百科,访问论坛,还有邮件列表,才能获取到你需要的相关组件的信息。使用闭源软件,一通电话就足够了,只需坐在自己舒适的办公室,会有西装革履的专业人士把PowerPoint演示文稿寄送到你的面前。
|
||||
当然,你得预先提供自己的联系方式,销售人员是不会不给你打电话的。这样看来,至少自己没必要粗略地在网上搜索漂亮的图形。
|
||||
|
||||
**6. 你无需到处寻求技术支持**
|
||||
|
||||
你可以得到来自开源社区,自己的工程师,或专业开源组织的帮助。这可能需要一些时间,以决定是否要服务等级协议(SLA)的支持便于在保证的时间内得到答复,就像从OpenLogic那里获得帮助一样,或者如果你觉得随意的话可以张贴问题到邮件列表,自己解决。闭源就不同了,你根本不需要担忧从哪获得帮助。而且,你可能根本用不着和工程师当面交谈,只需要知道给谁打电话就OK了。
|
||||
|
||||
**7. 认输就行了**
|
||||
|
||||
开源软件,总会有办法解决问题,打补丁,改善,强化,重构,升级,或者重写。没可能跟闭源那样,甩手走开。当然,你可以谩骂开发出这个导致问题的软件的社区,但是你仍然可以解决问题,从社区或者组织那里获得帮助,或者自己动手解决。
|
||||
|
||||
嗯,你都了解了。为甚么闭源优于开源的几条缘由。你还有要补充的吗?
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://opensource.com/business/13/10/seven-reasons-closed-better-than-open-source
|
||||
|
||||
译者:[译者ID](https://github.com/l3b2w1) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,151 +0,0 @@
|
||||
08 Linux 内核: 配置内核(Part 4)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.392/)
|
||||
|
||||
在“The Linux kernel: Configuring the Kernel”的第四部分里,我们将继续配置更多的设置和特性。
|
||||
|
||||
这里我们被问及关于"IBM Calgary IOMMU support (CALGARY_IOMMU)"。这个选项将会提供对IBM xSeries x366和x460的IOMMU的支持。这也将让那些32位PCI,这些系统上不支持双地址周期(DAC (Double Address Cycle))的设备正常运行,因为该系统设置在访问超过3GB内存的时候会有问题。如果需要这些IOMMU设备可以用"iommu=off"在启动时关闭。(这些内核/模块参数会在以后的文章中讨论)
|
||||
|
||||
IOMMU(input/output memory management unit)是一个内存管理单元(MMU),它连接具有DMA功能的I/O总线到主内存上。DMA(Direct Memory Access)是许多计算机支持的一种允许特定设备不借助CPU直接访问内存的特性。双地址周期(Double Address Cycle, DAC)是64位DMA;通常的DMA使用32位。
|
||||
|
||||
下面,我们被问及是否默认启用Calgary(Should Calgary be enabled by default? (CALGARY_IOMMU_ENABLED_BY_DEFAULT))。Calgary与上面提到的IOMMU是同一个概念。这两者之间的不同是IOMMU可以支持许多设备而Calgary只能支持IBM IOMMU设备。如果禁用了它但是以后需要使用到它,可以使用内核参数(iommu=calgary)。
|
||||
|
||||
这里有个问题需要小心处理(Enable Maximum number of SMP Processors and NUMA Nodes (MAXSMP))。只有在内核运行在拥有很多SMP处理器和NUMA节点的情况下如Core i7和许多AMD CPU芯片才启用它。如果系统缺乏或者只有少量的SMP处理器和NUMA节点,内核就会变得低效。这个最好选择"No"。
|
||||
|
||||
非一致性内存访问(Non-Uniform Memory Access (NUMA))是一个每部分内存都需要花费更长时间访问其他部分内存的系统。一个节点就是一组内存。例如,一个NUMA系统可能有三块内存芯片。每块芯片是一个节点。在带CPU的主板上有一个节点/芯片(这是最快的节点)。另外两个在不同的总线傻nag。这两个节点需要比第一个节点花费更长的时间去访问。
|
||||
|
||||
注意:ccNUMA和NUMA目前是相同的至少是非常相似的。
|
||||
|
||||
对称多处理器(Symmetric Multi-Processing (SMP))是NUMA的替代品。它的内存在同一根总线上。只有这么多的CPU可以访问总线,所以这限制了SMP系统上处理器的数量。然而它内存的访问速度一样块。
|
||||
|
||||
记住:我是在为AMD64系统在编译内核,所以我会告诉你我的选择来帮助读者理解过程和选择。如果我没有指出我的选择,那么我用的就是默认选择。如果你在为不同的系统编译或者你有不同的需求,你需要在你的情况下做出替代的选择。
|
||||
|
||||
接下来,除非配置工具已经为你做了选择,选择一个内核需要支持的最多CPU的数量。这个配置根据你给的数量优化内核。
|
||||
|
||||
接着启用或禁用"SMT (Hyperthreading) scheduler support (SCHED_SMT)"。SMT调度器提升了在使用了超线程技术的Pentium 4处理器上的CPU决策。然而,这会带来额外的功耗,在一些系统上最好像我一样选择"no"。
|
||||
|
||||
超线程一种专有的SMT并行微处理器(Intel 实现了它)。这是多任务/多线程(同时做许多任务)的一种特殊形式。同时多线程(Simultaneous multithreading (SMT))提升了多线程的效率。
|
||||
|
||||
在这之后,启用或者禁用"Multi-core scheduler support (SCHED_MC)"。这样也是一种提升多核CPU决策的特性。然而这回带来额外功耗。我选择了"No"。
|
||||
|
||||
在下一个选项中可以选择抢占式模式。
|
||||
|
||||
Preemption Model
|
||||
1. No Forced Preemption (Server) (PREEMPT_NONE)
|
||||
> 2. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
|
||||
3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)
|
||||
choice[1-3]: 2
|
||||
|
||||
抢占就是暂停一个意图让它之后继续执行的中断任务的过程。抢占强制一个进程暂停。任务无法忽视抢占。
|
||||
|
||||
接着,我们被询问关于"Reroute for broken boot IRQs (X86_REROUTE_FOR_BROKEN_BOOT_IRQS)"。这是一个对于假中断的简单修复。假中断是一种不需要的硬件中断。这些通常是有电子干扰或者错误连接的电子产品触发。记住,中断是发送给处理器需要马上注意的信号。
|
||||
|
||||
这个选项对任何机器都很重要;我怀疑任何人可能都会有禁用这个特性的理由(Machine Check / overheating reporting (X86_MCE))。内核必须意识到过热和数据损坏,不然,系统将会继续操作,这样只会导致进一步的破坏。
|
||||
|
||||
下面,用户可以启用禁用"Intel MCE features (X86_MCE_INTEL)",这是一种额外的对像热度监控的Intel MCE特性的支持。因为我是为AMD64处理器编译内核所以我选择了"no"。机器检测异常(MCE)是一种当处理器发现硬件问题时的错误输出。MCE通常会导致内核严重错误(kernel panic)(相当于Windows中的"蓝屏")。
|
||||
|
||||
这个除了是AMD设备外是同一个问题Intel MCE features (X86_MCE_INTEL)。
|
||||
|
||||
下一个是我会禁用的调试特性(Machine check injector support (X86_MCE_INJECT))。这个会允许注射机检查。如果你偶尔执行机器注射,那最好编译成模块而不是编译进内核。机器注射可以使设备即使实际没有错误也可以发送一个错误信息。这个用来确认内核和其他进程可以正常处理错误。比如,如果CPU过热,接着应该关机,但是开发者如何在不损坏CPU的情况下测试代码。注射错误是一种最好的方法,因为它只是一种告诉硬件发送错误信号的软件。
|
||||
|
||||
注:模块是对可能被使用或者很少执行的特性/驱动而言的。只加入在许多使用该内核的系统中用到的特性/驱动到内核中。
|
||||
|
||||
如果内核很可能用在Dell笔记本上,那么启用这个特性(Dell laptop support (I8K))。否则,如果一些用户可能在戴尔笔记本电脑上使用这个内核,将其作为一个模块加入。如果这个内核不打算支持Dell笔记本,那就像我一样注释掉它。特别地,这个支持是一个允许Dell Inspiron 8000系列笔记本访问处理器的系统管理模式的驱动。系统管理模式的目的是得到处理器的温度和风扇状态,这对一些需要控制风扇的系统有用。
|
||||
|
||||
下面,用户可以选择微代码加载支持(CPU microcode loading support (MICROCODE))。这可以允许用户在支持这个特性的AMD或者Intel芯片上更新微代码。
|
||||
|
||||
注意:为了加载微代码,你必须拥有一个为你的处理器设计的合法的二进制微代码拷贝。
|
||||
|
||||
为了加载微代码补丁(修复bug或加入次要的特性)到intel芯片上(Intel microcode loading support (MICROCODE_INTEL)),这个必须启用。我禁用了它。
|
||||
|
||||
除了是AMD芯片外这个与上面的相同(AMD microcode loading support (MICROCODE_AMD))。
|
||||
|
||||
启用这个支持(/dev/cpu/*/msr - Model-specific register support (X86_MSR))可以允许某个处理器有权限使用x86特殊模块寄存器(Model-Specific Registers (MSRs))。这些寄存器是一些字符设备包括主要的202和次要的0到21((/dev/cpu/0/msr to /dev/cpu/31/msr))。这个特性用在多处理器系统上。每个虚拟字符设备都连接到一个特定的CPU。
|
||||
|
||||
注意:MSRs是用来改变CPU设备、调试、性能监控和执行追踪。MSRs使用x86指令集。
|
||||
|
||||
在这之后,我们有一个选项"CPU information support (X86_CPUID",启用这个特性允许处理器访问x86 CPUID指令,这需要通过字符设备在一个特定的CPU上执行。这些字符设备包括主要的202和次要的0到31(/dev/cpu/0/msr to /dev/cpu/31/msr),就像x86_MSR支持上面这些。
|
||||
|
||||
对于支持它的处理器,启用内核线性映射来使用1GB的页(Enable 1GB pages for kernel pagetables (DIRECT_GBPAGES))。启用这个可以帮助减轻TLB的压力。
|
||||
|
||||
页是内存本身的基本单位(位是数据的基本单位)。页的大小是由硬件自身决定的。页码表是虚拟和物理内存间的映射。物理内存是设备上的内存。虚拟内存是到内存的地址。依赖于系统架构,硬件可以访问大于实际内存地址的地址。举例来说,一个64位系统拥有6GB内存,管理员在需要时可以加上更多的内存。这是因为还有很多虚拟内存地址。然而,在很多32位系统上,系统管理员可以增加一条8GB的内存,但是系统无法完全使用它,因为系统中没有足够的虚拟内存地址去访问大容量的内存。转换后援缓冲器(Translation Lookaside Buffer (TLB))是一种提升虚拟内存转换速度的缓存系统。
|
||||
|
||||
下面,我们有了一个NUMA选项(Numa Memory Allocation and Scheduler Support (NUMA))。这可以允许内核在CPU本地内存分配器上分配CPU使用的内存。这个支持同样内核更好感知到NUMA。很少的32位系统需要这个特性,但是一些通用的645位处理器使用这个特性。我选择了"no"。
|
||||
|
||||
|
||||
为了系统使用旧方式来检测AMD NUMA节点拓扑,启用这个特性feature (Old style AMD Opteron NUMA detection (AMD_NUMA))。下一个选项是一种更新的检测方式(ACPI NUMA detection (X86_64_ACPI_NUMA))。如果两个都启用,新的方式将会占支配作用。一些硬件在使用其中一种方式而不是另外一个时工作得更好。
|
||||
|
||||
至于为了调试目的的NUMA仿真,启用下一个特性(NUMA emulation (NUMA_EMU))。
|
||||
|
||||
注意:如果你不打算调试并且你需要一个快速、轻量级系统,那么禁用尽可能多的调试特性。
|
||||
|
||||
下一个选项中,选择你的内核打算如何处理NUMA节点的最大数量。接下来选择内存模型。这里可能只有一个内存模型选择。内存模型指定了内存如何存储。
|
||||
|
||||
Maximum NUMA Nodes (as a power of 2) (NODES_SHIFT) [6]
|
||||
Memory model
|
||||
> 1. Sparse Memory (SPARSEMEM_MANUAL)
|
||||
choice[1]: 1
|
||||
|
||||
为了有助于性能,这里有一个选项用通过虚拟内存映射(Sparse Memory virtual memmap (SPARSEMEM_VMEMMAP))来优化pfn_to_page和page_to_pfn操作。页帧号是每页被给定的号码。这两个操作用来从号码得到页或者从页得到号码。
|
||||
|
||||
下一个选项是允许一个节点可以移除内存(Enable to assign a node which has only movable memory (MOVABLE_NODE))。内核页通常无法移除。当启用后,用户可以热插拔内存节点。同样可移除内存允许内存整理。作为出入内存的数据,只要有可用空间一组数据可能被划分到不同内存。
|
||||
|
||||
接着前面的内存问题,我们还有更多的问题。这些可能已被配置工具预配置了。第三个选项(BALLOON_COMPACTION),当启用时可以帮助减少内存碎片。碎片内存会减慢系统速度。第四个选项(COMPACTION)允许内存压缩。下面列到的第五个选项(MIGRATION)允许页面被移动。
|
||||
|
||||
Allow for memory hot-add (MEMORY_HOTPLUG)
|
||||
Allow for memory hot remove (MEMORY_HOTREMOVE)
|
||||
Allow for balloon memory compaction/migration (BALLOON_COMPACTION)
|
||||
Allow for memory compaction ()
|
||||
Page migration (MIGRATION)
|
||||
|
||||
注意:启用可移动内存会启用以上5个特性。
|
||||
|
||||
下一步,我们可以"Enable KSM for page merging (KSM)"。内核同页合并(Kernel Samepage Merging (KSM))会查看程序认为可以合并的内核。如果两页内存完全相同这可以节约内存。一块内存可以被删除或者被合并,并且只有一块可以使用。
|
||||
|
||||
配置工具可能会自动选择使用多少内存保存用户分配(Low address space to protect from user allocation (DEFAULT_MMAP_MIN_ADDR) [65536])。
|
||||
|
||||
下一个选项很重要(Enable recovery from hardware memory errors (MEMORY_FAILURE))。如果内存故障并且系统有MCA恢复或者ECC内存,系统就可以继续运行并且恢复。要有这个特性,硬件自身和内核都必须支持。
|
||||
|
||||
机器检测架构(Machine Check Architecture (MCA))是一个一些CPU上可以发送硬件错误信息给操作系统的特性。错误更正码内存(Error-correcting code memory (ECC memory))是一种内存设备检测和纠正错误的形式。
|
||||
|
||||
下面,配置工具会自动启用"HWPoison pages injector (HWPOISON_INJECT)"。这个特性允许内核标记一块坏页为"poisoned",接着内核会杀死创建坏页的程序。这有助于停止并纠正错误。
|
||||
|
||||
为了允许内核使用大页(Transparent Hugepage Support (TRANSPARENT_HUGEPAGE)),启用这个特性。这可以加速系统但是需要更多内存。嵌入式系统不必使用这个特性。嵌入式系统通常只有非常小的内存。
|
||||
|
||||
如果启用了上面的,那么巨大页的sysfs支持必须配置。
|
||||
|
||||
Transparent Hugepage Support sysfs defaults
|
||||
1. always (TRANSPARENT_HUGEPAGE_ALWAYS)
|
||||
> 2. madvise (TRANSPARENT_HUGEPAGE_MADVISE)
|
||||
choice[1-2?]: 2
|
||||
|
||||
下面的选项是增加process_vm_readv和process_vm_writev这两个系统调用(Cross Memory Support (CROSS_MEMORY_ATTACH))。这允许特权进程访问另外一个程序的地址空间。
|
||||
|
||||
如果有tmem,启用缓存清理(cleancache)通常是一个好主意 (Enable cleancache driver to cache clean pages if Transcendent Memory (tmem) is present (CLEANCACHE))。当一些内存页需要从内存中移除时,cleancache会将页面放在cleancache-enabled的文件系统上。当需要该页时,页会被重新放回内存中。超绝记忆体(tmem)没有一组一直大小的内存。内核对此内存使用间接寻址。
|
||||
|
||||
下一个选项允许在tmen激活后缓存交换页(Enable frontswap to cache swap pages if tmem is present (FRONTSWAP))。frontswap在交换分区放置数据。交换特性的支持需要这个。超绝记忆体
|
||||
|
||||
最好启用下一个特性(Check for low memory corruption (X86_CHECK_BIOS_CORRUPTION))。这会检测低位内存的内存损坏情况。这个特性在执行期被禁止。为了启用这个特性,在内核命令行内加入"memory_corruption_check=1"(这会在以后的文章中讨论;这不同于任何命令行)。即使经常执行这个特性,也只使用非常小的开销(接近没有)。
|
||||
|
||||
接下来我门可以设置内存损坏检测的默认设置(“Set the default setting of memory_corruption_check (X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK))。这可以选择是否开启或关闭memory_corruption_check。最好启用内存损坏检测不然如果一部分重要内存损坏后可能会导致数据丢失和系统崩溃。
|
||||
|
||||
这个选项关注的是BIOS(Amount of low memory, in kilobytes, to reserve for the BIOS (X86_RESERVE_LOW) [64])。配置工具通常知道给BIOS预留内存的最佳大小。
|
||||
|
||||
对于Intel P6处理器,开发者可以启用存储区域类型寄存器(MTRR (Memory Type Range Register) support (MTRR))。这用于连接着VGA卡的AGP和PCI卡。启用这个特性内核会创建/proc/mtrr。
|
||||
|
||||
如果X驱动需要加入回写入口,那么启用下面的选项(MTRR cleanup support (MTRR_SANITIZER))。这会将MTRR的布局从连续转换到离散。存储区域类型寄存器(Memory type range registers (MTRRs))提供了一种软件访问CPU缓存的方法。
|
||||
|
||||
下面,配置工具已经设置了一些MTRR选项
|
||||
|
||||
MTRR cleanup enable value (0-1) (MTRR_SANITIZER_ENABLE_DEFAULT) [1]
|
||||
MTRR cleanup spare reg num (0-7) (MTRR_SANITIZER_SPARE_REG_NR_DEFAULT) [1]
|
||||
|
||||
为了设置页级缓冲控制,那就启用PAT属性(x86 PAT support (X86_PAT))。页属性表(Page Attribute Table (PATs))是现在版的MTRRs并比它更灵活。如果你经历过因启用它而引发的启动问题,那么禁用这个特性后重新编译内核。我选择了"no"。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-4.4392/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,121 @@
|
||||
戴文的Linux内核专题:15 配置内核 (11)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.530/)
|
||||
|
||||
准备好配置更多的驱动了么?还有很多要做。
|
||||
|
||||
Linux支持两种不同的康柏智能阵列控制器:(Compaq SMART2 support)和(Compaq Smart Array 5xxx support)。阵列控制器是将物理存储单元表现为逻辑单元的设备。这些控制可能同样实现了基于硬件的RAID。硬件和软件RIAD的不同是简单的。Linux管理并见到软件RIAD。Linux将硬件RAID视为另外的存储单元。这意味着Linux没有意识到设备就是RAID驱动器。硬件(阵列控制器)独立于内核管理着RAID系统。这对于系统的性能更好因为内核不必配置或者管理RAID。注意,不同的阵列控制器有不同的RAID能力。
|
||||
|
||||
上面提到的阵列控制器可以通过这个驱动反问SCSI磁带(SCSI tape drive support for Smart Array 5xxx)。SCSI磁带是使用SCSI协议的磁带。
|
||||
|
||||
PCI RAID控制器Mylex DAC960、AcceleRAID和eXtremeRAID在这个驱动中支持(Mylex DAC960/DAC1100 PCI RAID Controller support)。PCI RAID控制器是一个连接到PCI卡的阵列控制器。RAID控制器是拥有RAID功能的阵列控制器。
|
||||
|
||||
带电源备份的MM5415内存芯片在这个驱动中支持(Micro Memory MM5415 Battery Backed RAM support)。带后备电源内存芯片允许数据在切断电源后继续保存在内存设备中。这有助于保护数据。不然,当电源断开后,当前的计算机会话就会丢失。
|
||||
|
||||
当启用这个特性后,可以将典型的文件(比如ISO文件)作为一个块设备并挂载它Loopback device support)。这对于从镜像文件中检索文件而不必把文件烧录到光盘或者解压出来。想像一下你从因特网上得到了一份包含了很多文件的ISO文件。如果你只需要包中的一个文件并且用户不希望烧写ISO到光盘上或者不想知道如何打开一个ISO文件。用户可以用挂载ISO来替代。
|
||||
|
||||
Linux内核在初始化阶段会创建一些回路设备,所以一些回环设备已经准备好并创建了(Number of loop devices to pre-create at init time)。当一个文件(像ISO)或者虚拟设备(就像虚拟磁盘驱动器[vhd])被作为回环设备挂载时会节约一些时间。这个设定允许开发者选择内核可以预
|
||||
创建多少回环设备。
|
||||
|
||||
当"Cryptoloop Support"启用后就可以CryptoAPI创建密码。这个用于硬件驱动器加密。然而,并不是所有的文件系统都支持。
|
||||
|
||||
下面用户可以启用"DRBD Distributed Replicated Block Device support"(译注:Linux上的分布存储系统)。这个就像网络RAID1。这些设备拥有设备文件/dev/drbdx。这些设备通常被用于集群,这里集群中的每台计算机都有一个从主单元镜像过来的存储单元。这意味着每台计算机的硬盘是位于组中心计算机硬盘的镜像拷贝。集群是一组计算机扮演着一台大型强力单元的角色。然而,每个集群都有一台控制计算机称为主节点。余下的计算机是从节点。
|
||||
|
||||
DRBD支持用于测试IO错误处理的故障注射(DRBD fault injection)。记住,故障注射就是使设备/软件认为发生了一个错误,因此开发者可以测试硬件/软件如何处理错误
|
||||
|
||||
如果内核要成为网络块设备的客户端,那么启用这个特性(Network block device support)。第一个设备文件是/dev/nd0。网络块设备是通过网络访问的远程存储单元。
|
||||
|
||||
直接连接SSD到PCI或者PCIe需要这个驱动(NVM Express block device)。
|
||||
|
||||
用这个特性允许将单独的SCSI OSD(object-based storage,基于对象的存储)对象作为块设备(OSD object-as-blkdev support)。
|
||||
|
||||
下一个驱动是"Promise SATA SX8 support"。这个驱动用于Promise公司(Promise Technology Inc.)生产的SATA控制器。
|
||||
|
||||
Linux允许将一部分内存作为块设备(RAM block device support)。这通常见与完全运行于内存上的Linux的live发行版。Linux的live发行版会卸载光盘并接着加载到内存中,所以在尝试一个新的操作系统或者修复另一个系统时不会伤害到已安装的系统。
|
||||
|
||||
下一个选项允许用户输入"Default number of RAM disks"(默认RAM磁盘数量)。
|
||||
|
||||
"Default RAM disk size"(默认RAM磁盘大小)可以以KB设置大小。
|
||||
|
||||
内核可以支持在内存设备的XIP文件系统作为块设备(Support XIP filesystems on RAM block device)。这个特性会增大内核的大小。 XIP (eXecute In Place)文件系统是一个允许可执行文件在相同的文件系统上存储数据而不必像其他应用一样利用内存。在一个驻留在内存上的live版linux系统上运行可执行文件时需要这个文件系统。
|
||||
|
||||
下面,内核可以支持"Packet writing on CD/DVD media"。(CD/DVD刻录机支持.)
|
||||
|
||||
内核开发者可以设置最大活跃并发包数量(Free buffers for data gathering)。大的数字会以内存的消耗为代价加速写入性能。一个包会消耗大约64KB。
|
||||
|
||||
Linux内核可以使用可擦写光盘作为缓存空间(Enable write caching)。这个特性仍然是试验性质。
|
||||
|
||||
下面的特性允许通过以太网线缆使用ATA规范(ATA over Ethernet support)。
|
||||
|
||||
下面的驱动允许虚拟块设备创建为virtio(Virtio block driver)。virtio是IO虚拟化平台。
|
||||
|
||||
一些旧的硬盘还要一个特殊的驱动(Very old hard disk (MFM/RLL/IDE) driver)。
|
||||
|
||||
这里有一个驱动用于先前提到的Rados设备(Rados block device (RBD))。
|
||||
|
||||
下面是一个特殊的设备驱动(IBM FlashSystem 70/80 PCIe SSD Device Driver)。
|
||||
|
||||
现在,我们可以进入杂项设备。第一个设定是启用/禁用电位器(Analog Devices Digital Potentiometers )。
|
||||
|
||||
如果电位器在I2C总线上,那么就启用这个(support I2C bus connection)。
|
||||
|
||||
如果电位器是连接到SPI总线,那么需要这个驱动(support SPI bus connection)。
|
||||
|
||||
注意:Linux内核支持很多传感器因为Linux内核经常用于天气设备和机器人。
|
||||
这个驱动用于IBM RSA(Condor)服务处理器(Device driver for IBM RSA service processor)。
|
||||
|
||||
内核同样支持PCI Sensable PHANToM设备驱动(Sensable PHANToM (PCI))。
|
||||
|
||||
这个驱动指引不同来自并行追踪接口(Parallel Trace Interface (PTI))的追踪数据发往Intel Penwell PTI口 (Parallel Trace Interface for MIPI P1149.7 cJTAG standard)。这个被指领的数据用于调试目的。
|
||||
|
||||
一些带有IOC4芯片的SGI IO控制器需要这个驱动(SGI IOC4 Base IO support)。SGI IO是由SCI管理的输入/输出舍必。IOC4芯片控制着许多由这些设备执行的任务。这是一个基础驱动。其他对这些设备的驱动依赖于这个驱动。
|
||||
|
||||
这里有很少的TI闪存媒体适配器驱动在Linux内核中,(TI Flash Media interface support) 和(TI Flash Media PCI74xx/PCI76xx host adapter support)。
|
||||
|
||||
这个 驱动("Integrated Circuits ICS932S401")用于ICS932S401时钟控制芯片。
|
||||
|
||||
Atmel同步串行通信外设(Synchronized Serial Communication peripheral (SSC))有一个驱动在内核中(Device driver for Atmel SSC peripheral)。这个设备提供点对点的设备间的串行连接。
|
||||
|
||||
"Enclosure Services"特性支持硬盘托架。
|
||||
|
||||
这是对于CS5535/CS5536芯片的定时器驱动(CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support)。
|
||||
|
||||
这个驱动让应用可以与HP工业标准服务器中的iLO管理处理器通信(Channel interface driver for the HP iLO processor)。"iLO"代表的是"Integrity Integrated Lights-Out".iLO允许远程服务器管理。
|
||||
|
||||
Linux内核支持ALS APDS9802光敏传感器(Medfield Avago APDS9802 ALS Sensor module)。一些其他支持的传感器包括:
|
||||
Intersil ISL29003 ambient light sensor
|
||||
Intersil ISL29020 ambient light sensor
|
||||
Taos TSL2550 ambient light sensor
|
||||
ROHM BH1780GLI ambient light sensor
|
||||
BH1770GLC / SFH7770 combined ALS - Proximity sensor
|
||||
APDS990X combined als and proximity sensors
|
||||
|
||||
注意:如果内核是为广泛的计算机编译的话,大多数驱动应该以模块形式加入。
|
||||
|
||||
Linux甚至可以使用"Honeywell HMC6352 compass"(一种电子罗盘)。
|
||||
|
||||
内核同样支持"Dallas DS1682 Total Elapsed Time Recorder with Alarm"。(一种运行时间记录仪)
|
||||
|
||||
16位的数模转换器通过这个驱动支持(Texas Instruments DAC7512)。
|
||||
|
||||
"VMware Balloon Driver"将客户机操作系统不需要的物理内存页交给需要那些需要的。
|
||||
|
||||
这里有两个不同的压力传感器(BMP085 digital pressure sensor on I2C) 和 (BMP085 digital pressure sensor on SPI)。
|
||||
|
||||
Intel输入/输出集线器(Intel Input/Output Hub (IOH))同样在内核中支持(Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB)。具体地说,这个是Intel Topcliff芯片组的PCH PHUB(Platform Controller Hub Packet Hub)
|
||||
|
||||
"FSA9480 USB Switch"是检测设备何时插入的检测器。
|
||||
|
||||
下一个选项允许比特流配置(Lattice ECP3 FPGA bitstream configuration via SPI)。
|
||||
|
||||
Silicon微控制器使用Silicon实验室C2端口,这需要一个特殊的驱动(Silicon Labs C2 port support)。
|
||||
|
||||
再说一次,继续留意下一篇文章因为我们还有更多的要做。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-11.4640/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,124 @@
|
||||
戴文的Linux内核专题:16 配置内核 (12)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.539/)
|
||||
|
||||
欢迎来享受Linux内核配置系列下一部分。如你所猜到的那样,内核支持大量不同的硬件、协议和特性。
|
||||
|
||||
下一组我们要讨论的特性是"EEPROM support"。电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory)是一种掉电或者意外关闭后不会擦除内容的存储器。
|
||||
|
||||
内核支持在I2C卡上的EEPROM芯片包括FRAMs、ROMs和SRAMs (I2C EEPROMs / RAMs / ROMs 来自多数供货商)。FRAM(同样也称作FeRAM是一种使用铁电原理而不是电介质存储数据的随机访问存储芯片)。ROM芯片是只读(Read Only Memory)芯片。SRAM是静态而不是动态存储器就像DRAM。DRAN必须被刷新以保留数据而SRAM不需要刷新。然而,两者都会在电源关闭或者丢失时失去数据。
|
||||
|
||||
内核支持SPI总线的EEPROM(SPI EEPROMs from most vendors)。串行外设接口总线(Serial Peripheral Interface Bus (SPI))是一个缺乏错误检测的全双工总线系统。
|
||||
|
||||
老式的I2C EEPROM芯片需要一个除了上面I2C驱动的驱动(Old I2C EEPROM reader)。I2C总线用于嵌入式系统和电话,由于它用的是低速总线协议。
|
||||
|
||||
这个特性用来防止Maxim的可编程EEPROM变成只读模式(Maxim MAX6874/5 power supply supervisor)。特别地,这驱动提供对这个芯片的更好的电源管理。
|
||||
|
||||
这里还有一个驱动"EEPROM 93CX6 support","Microwire EEPROM 93XX46 support"和"ENE CB710/720 Flash memory card reader support"。
|
||||
|
||||
和其他内核特性一样,这里有一个对于EEPROM的调试特性(Enable driver debugging)。再说一次,为了更好的性能,禁用调试特性。
|
||||
|
||||
下面,我们有一个TI特性(Shared transport core driver)。这个驱动提供对于BT/FM和GPS芯片的传输协议。
|
||||
|
||||
下面的驱动支持I2C LIS3LV02Dx加速度计(STMicroeletronics LIS3LV02Dx three-axis digital accelerometer (I2C))。设备提供的数据存储在/sys/devices/platform/lis3lv02d。
|
||||
|
||||
下一步, Linux提供了下载固件到Altera的FPGA的模块(Altera FPGA firmware download module)。FPGA就是现在可编程门阵列(field-programmable gate array)。它们是可编程集成电路。
|
||||
|
||||
Intel Management Engine Interface"提供Intel芯片的安全和其他服务。
|
||||
|
||||
"ME Enabled Intel Chipsets"可以支持MEI。MEI是"Management Engine Interface"(管理引擎接口)。这个驱动支持有MEI服务的芯片组。
|
||||
|
||||
"VMware VMCI Driver"是一种用于客户机和宿主机中继通信的高速虚拟设备。VMCI代表的是"Virtual Machine Communication Interface"(虚拟机通信接口)。
|
||||
|
||||
下面, "ATA/ATAPI/MFM/RLL support"可以启用/禁用。MFM (Modified Frequency Modulation)是一种特殊的编码软驱位的方法。然而,这并不工作在所有的软驱上。MFM使用RLL(Run-Length Limited)编码制式。RLL通过有带宽限制的系统通信转换数据。ATAPI是先前提过的"ATA Packet Interface",同时ATA也在讨论接口标准的时候讨论过。
|
||||
|
||||
现在我们将讨论SCSI支持。小型计算机接口(Small Computer System Interface (SCSI))是另外一种SATA的接口标准。USB和火线设备使用SCSI协议。
|
||||
|
||||
第一个SCSI设定关于"RAID Transport Class"。这允许RAID使用SCSI标准。
|
||||
|
||||
为了使用SCSI目标,启用这个特性(SCSI target support)。
|
||||
|
||||
如果系统会运行旧的Linux应用,系统可能需要"legacy /proc/scsi/ support"。这会在/proc/scsi创建SCSI文件。
|
||||
|
||||
为了支持SCSI磁盘,启用下一个特性(SCSI disk support)。这是一个通用驱动。
|
||||
|
||||
为了支持SCSI磁带,启用这个特性(SCSI tape support)。这是一个通用驱动。SCSI磁带驱动器在像磁带的磁性条上记录数据。
|
||||
|
||||
OnStream SCSI磁带需要这个驱动而不是前面提到SCSI通用驱动SCSI OnStream SC-x0 tape support)。
|
||||
|
||||
"对于SCSI CDROM support",一些CD-ROM使用SCSI协议。
|
||||
|
||||
下面, 用户可以启用"Enable vendor-specific extensions (for SCSI CDROM)"。
|
||||
|
||||
这是一个对于大量不同SCSI设备的通用驱动(SCSI generic support)。这主要用于SCSI扫描仪和其他不被上面提到的SCSI驱动支持的设备或者那些之后会讨论的设备。
|
||||
|
||||
一些SCSI点唱机需要这个SCSI驱动(SCSI media changer support)。
|
||||
|
||||
Linux内核提供"SCSI Enclosure Support"。SCSI附件是一种管理电源和制冷SCSI设备同时提供不关于数据的服务的设备。
|
||||
|
||||
Linux内核应该设置为每个SCSI设备搜索全部的逻辑单元号(Logical Unit Numbers (LUN))(Probe all LUNs on each SCSI device)。LUN是SCSI地址。
|
||||
|
||||
这有额外的对于SCSI的错误报告(Verbose SCSI error reporting (kernel size +=12K))。这会明显地增加内核的大小。
|
||||
|
||||
这里还有一个SCSI日志系统(SCSI logging facility)。
|
||||
|
||||
为了增强你的系统,启用这个特性会允许SCSI在系统启动时就被探测到而不是先启用再探测(Asynchronous SCSI scanning)。大多数系统可以一次执行这两个任务,因此为什么允许这项? 对于那些连接了很多SCSI设备的硬件,这个会明显加快启动速度。
|
||||
|
||||
下面,"Parallel SCSI (SPI) Transport Attributes"(传统的并行SCSI)允许每个SCSI设备发送传输信息给sysfs。一些系统需要这个特性。
|
||||
|
||||
下面的特性和上面提到的一样,但是发送光纤通道设备的传输信息(FiberChannel Transport Attributes)(光纤通道接口)。光线通道设备使用SCSI。
|
||||
|
||||
下面用户可以启用/禁用"SCSI target support for FiberChannel Transport Attributes"(为光纤通道添加"target"模式驱动)。
|
||||
|
||||
iSCSI设备和SAS设备的传输数据可以导出到sysfs(iSCSI Transport Attributes)和SAS Transport Attributes)。SAS代表的的是"Serial Attached SCSI"(串行链接SCSI)。
|
||||
|
||||
下面,ATA支持被加入libsas(ATA support for libsas (requires libata))。注意配置工具提示需要libata。为了满足这个需求,启用ATA支持。更多情况下,配置工具已经或者将会会你这么做,但是请无论再检查一下。libsas和libata是相应的支持SAS和ATA的库。
|
||||
|
||||
下面的特性允许SAS接口接收SMP帧(Support for SMP interpretation for SAS hosts)。这加入了一个SMP解释器到libsas中。然而,这不会增加内核的尺寸。SMP帧允许所有在多CPU系统上的处理器访问SAS设备。
|
||||
|
||||
SRP可以发送传输的数据给sysfs(SRP Transport Attributes)。SRP代表SCSI RDMA协议(SCSI RDMA Protocol)。RDMA代表远程直接内存访问(Remote Direct Memory Access)。这意味着SRP是一个用来访问连接到另外一台计算机的SCSI设备的数据的协议。
|
||||
|
||||
下一步,用户可以启用"SCSI target support for SRP Transport"。
|
||||
|
||||
可以启用底层SCSI驱动(SCSI low-level drivers)。这提供了很多基础驱动。
|
||||
|
||||
在这之后,用户可以启用/禁用"PCMCIA SCSI adapter support"。这个适配器允许SCSI设备连接到PC卡上。
|
||||
|
||||
这里有一些驱动用于特殊的适配器- (Future Domain PCMCIA support)、(Qlogic PCMCIA support) 、(Symbios 53c500 PCMCIA support)。
|
||||
|
||||
多路径安装的设备需要这个特性(SCSI Device Handlers)。这用在每个节点都需要一个到SCSI存储单元的直接路径的集群中。
|
||||
|
||||
下一步,"OSD-Initiator library"(OSD启动库)可以启用。这是一个提供了补丁、OSD协议、和针对SCSI设备的T10协议的SCSI驱动。 OSD代表的是基于对象的存储设备(Object-based Storage Device);下一段会讨论得更多。
|
||||
|
||||
这个特性生成一个SCSI上层用于测试和管理/dev/osdx设备(OSD Upper Level driver)。exofs使用这个驱动用于挂载基于OSD的文件系统。OSD设备不像其他存储单元一样使用块的存储设备。相反地,OSD设备存储数据在称之为对象的容器里。exofs曾经称作OSDFS。
|
||||
|
||||
如果启用了它,OSD特性提供了调试工具(Compile All OSD modules with lots of DEBUG prints)。
|
||||
|
||||
如今,我们可以讨论串行ATA和并行ATA特性和驱动了。首先启用/禁用用于调试的第一个特性(Verbose ATA error reporting)。
|
||||
|
||||
下一步,用户应该对于ATA设备启用高级配置及电源接口特性(ATA ACPI Support)。这允许内核在SATA设备上更有效地管理电源使用。
|
||||
|
||||
内核包含了对于"SATA Zero Power Optical Disc Drive (ZPODD) support"的驱动。这会在不使用时关闭SATA光盘驱动器(SATA optical disc drives (ODD))。这节约了能源以及减少损耗。
|
||||
|
||||
贴士:即使你在编译一个高性能的内核,尝试启用所有的电源管理特性。则减少了电源消耗、操作开销、热量产生(热量会降低性能),以及磨损。
|
||||
|
||||
SATA端口复用器需要这个驱动(SATA Port Multiplier support)。端口复用器是一个拥有许多端口但是自己仅需插入一个端口的设备。举例来说,如果一个硬件有一个SATA口,但是还需要更多的口,在这个口上插入端口复用器。现在设备可以有许多SATA口了。
|
||||
|
||||
下一个驱动用于AHCI SATA(AHCI SATA support)。高级主机控制器接口(Advanced Host Controller Interface (AHCI))是一种SATA总线适配器的操作标准。
|
||||
|
||||
对于要在Soc硬件上支持AHCI SATA设备,必须启用这个驱动(Platform AHCI SATA support)。Soc代表片上系统(System-on-a-Chip)。
|
||||
|
||||
下面是一些特殊设备的驱动
|
||||
Initio 162x SATA support
|
||||
ACard AHCI variant (ATP 8620)
|
||||
Silicon Image 3124/3132 SATA support
|
||||
|
||||
再说一次,等着下一篇精彩的文章。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-12.4681/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,129 @@
|
||||
戴文的Linux内核专题:17 配置内核 (13)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.555/)
|
||||
|
||||
你好!这是Linux内核系列的下一篇,我们仍将配置ATA设备并将进入逻辑卷/存储。
|
||||
|
||||
"ATA SFF support (for legacy IDE and PATA)"应该启用,因为这扩展了ATA的能力。
|
||||
|
||||
为了支持Pacific Digital的ADMA控制器,应该启用"Pacific Digital ADMA support"。
|
||||
|
||||
"Pacific Digital Serial ATA QStor support"(串口ATA支持)在下一个驱动中支持
|
||||
|
||||
Promise的SATA SX4设备在内核中支持(Promise SATA SX4 support (Experimental))。
|
||||
|
||||
可以BMDMA的SFF ATA控制器需要这个驱动(ATA BMDMA support)。BMDMA代表总线主控直接内存访问(BMDMA stands for Bus-Master Direct Memory Access)。
|
||||
|
||||
下面,这个驱动对不同的SATA和PATA控制器提供支持Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support)。
|
||||
|
||||
这里有其他的特定设备驱动(Calxeda Highbank SATA support)、(Marvell SATA support)、(NVIDIA SATA support)、(Promise SATA TX2/TX4 support)、(Silicon Image SATA support)还有(SiS 964/965/966/180 SATA support)、(ServerWorks Frodo / Apple K2 SATA support)、(ULi Electronics SATA support)、(VIA SATA support)。。。由于有很多SATA/PATA控制器设计不同,一个通用驱动无法使用在这些设备上。
|
||||
|
||||
接下来,这个驱动支持PC卡上的ATA设备除非有特定设备管理硬件的驱动(PCMCIA PATA support)。
|
||||
|
||||
在这之后,有一个通用PATA驱动用于管理其他不被先前驱动支持的PATA设备 (Generic platform device PATA support)。
|
||||
|
||||
PATA设备的电源消耗由这个ACPI驱动管理(ACPI firmware driver for PATA)。强烈建议对系统上所有的硬件启用ACPI。虽然这会增加内核的大小,但是ACPI会增强性能。
|
||||
|
||||
"Generic ATA support"(通用ATA支持)由这个驱动提供。
|
||||
|
||||
古老的ISA、VLB和PCI总线PATA设备可以通过这个驱动支持(Legacy ISA PATA support (Experimental))。这个古老支持使用新的ATA层。
|
||||
|
||||
这组特性包含了许多对于RAID和LVM能力,可见下面的特性选项(Multiple devices driver support (RAID and LVM))。
|
||||
|
||||
有趣的事实:内核是由C和汇编写成的。
|
||||
|
||||
这个驱动允许RAID和LVM组合在一起。这用于使几个LVM卷使用RAID。分区被组合成逻辑块设备,然后形成RAID设备。
|
||||
|
||||
许多用户会希望RAID可以在启动时侦测到(Autodetect RAID arrays during kernel boot)。如果你没有RAID,那么不要启用这个特性。不然,启动处理会比原先希望的慢上几秒。
|
||||
|
||||
注意:当配置Linux内核时,最好按照"use it or lose it"(非用即失)的原则。那就是,如果你不用它,那就禁用这个特性。
|
||||
|
||||
硬盘分区可以通过这个驱动加在一起(Linear (append) mode)。
|
||||
|
||||
下面的驱动加入RAID-0支持带逻辑块设备中(RAID-0 (striping) mode)。接着还有 (RAID-1 (mirroring) mode)、(RAID-10 (mirrored striping) mode)和(RAID-4/RAID-5/RAID-6 mode)。
|
||||
|
||||
MD框架需要多路径支持(Multipath I/O support)。MD框架就是多设备(Multi Device)框架,它将多台设备作为一个单元管理。举例来说,将许多存储单元的分区组合起来可以使多个设备就像一个那样。多路径支持是用于使用处理虚拟的有多个地址的"单个设备"。因为单存储单元物理上有多件物理设备,所以它有多个硬件地址。
|
||||
|
||||
使用这个调试驱动,可以测试更大的多磁盘存储单元的bug(Faulty test module for MD)。
|
||||
|
||||
"Device mapper support"是一个用来映射逻辑扇区的卷管理器。LVM使用扇区映射。
|
||||
|
||||
如果启用的话,设备映射器可以有调试特性(Device mapper debugging support)。
|
||||
|
||||
如果需要,逻辑设备可以设置加密数据(Crypt target support)。这个特性允许用户将来加密那些存储设备。
|
||||
|
||||
只有启用了这个特性,才能使用逻辑存储单元的快照功能(Snapshot target)。
|
||||
|
||||
"Thin provisioning"(自动精简配置)允许逻辑卷设置成比组成逻辑卷的物理设备拥有更大的存储容量(Thin provisioning target)。这个特性同样为这类设备提供了快照功能。这额外的虚拟数据空间无法马上使用。这个特性的意义是允许用户在将来增加物理存储单元并且节约了配置逻辑块设备的时间。
|
||||
|
||||
用这个可以调试"Thin provisioning" (Keep stack trace of thin provisioning block lock holders)。
|
||||
|
||||
块设备性能的提升可以通过移动更多的常用数据到更快的存储单元中(Cache target (EXPERIMENTAL))。
|
||||
|
||||
卷管理器可以制成镜像逻辑卷(Mirror target)。
|
||||
|
||||
设备映射器(Device-mapper (dm))单元支持映射RAID1、RAID10、 RAID4、RAID5和RAID6(RAID 1/4/5/6/10 target)。
|
||||
|
||||
设备映射器(device-mapper)日志可以镜像到用户空间(Mirror userspace logging)。
|
||||
|
||||
"Zero target"是一个忽视写入并返回读取为零的设备。
|
||||
|
||||
接下来,卷管理器应该对硬件有多路径支持(Multipath target)。
|
||||
|
||||
这个驱动会发现最有效的到存储设备的路径来读取和写入(I/O Path Selector based on the number of in-flight I/Os)。
|
||||
|
||||
=下面的一个驱动和以上相同,但是会寻找最快路径(I/O Path Selector based on the service time)。
|
||||
|
||||
如果一个逻辑卷上的物理存储单元正忙,如果可能的话,这个特性会允许读取/写入到另一个物理卷上。
|
||||
|
||||
udev可以生成设备管理器操作事件DM uevents)。udev是/dev的设备管理器。
|
||||
|
||||
为了测试软件/硬件对偶尔失败的输入/输出任务的逻辑设备如何反映,启用这个调试特性(Flakey target)。
|
||||
|
||||
逻辑卷可以创建为一个用于验证另一个逻辑分区数据的只读存储单元(Verity target support)。
|
||||
|
||||
注意:如果你喜欢我的文章,并且如果你有Linux.org的账号,请在我的文章上点击"Like"。同样,再次分享这篇文章在Google、Twitter和/或者Facebook上。
|
||||
|
||||
ConfigFS和TCM存储引擎可以通过这个设置启用(Generic Target Core Mod (TCM) and ConfigFS Infrastructure)。ConfigFS是一个基于内存的文件系统。
|
||||
|
||||
有趣的事实:Linux内核没有"main()"函数。在程序中,main()被依赖于kernel的libc调用。内核没有main()函数是因为libc将无法启动内核。如果内核的确有main()函数,那么我们就有一个"鸡或者蛋"的问题-谁先来?另外,内核的入口点用汇编写成,这并不使用main()函数。
|
||||
|
||||
下面,"TCM/IBLOCK Subsystem Plugin for Linux/BLOCK"可以禁用或者启用。
|
||||
|
||||
接着"TCM/FILEIO Subsystem Plugin for Linux/VFS"可以启用/禁用。
|
||||
|
||||
再次,还有两个TCM特性 - (TCM/pSCSI Subsystem Plugin for Linux/SCSI) 和 (TCM Virtual SAS target and Linux/SCSI LDD fabric loopback module)
|
||||
|
||||
对于ConfigFS的"Linux-iSCSI.org iSCSI Target Mode Stack"在这个驱动中支持(Linux-iSCSI.org iSCSI Target Mode Stack)。
|
||||
|
||||
下一步,可以启用/禁用"FireWire SBP-2 fabric module"。这允许一台计算机作为一个硬盘连接到另一台计算机上。
|
||||
|
||||
在这之后,我们可以配置"Fusion Message Passing Technology (MPT) device support"。
|
||||
|
||||
在那个标题下的第一个选项是一个用于并口适配器的SCSI支持的驱动(Fusion MPT ScsiHost drivers for SPI)。
|
||||
|
||||
SCSI同样也可以支持光纤通道主机适配器(Fusion MPT ScsiHost drivers for FC)和/或SAS适配器(Fusion MPT ScsiHost drivers for SAS)。
|
||||
|
||||
下一步,用户可以设置"Maximum number of scatter gather entries"。一个低的数值可以减少每个控制器实例的内存消耗。
|
||||
|
||||
下一个驱动提供了ioctl系统调用来管理MPT适配器(Fusion MPT misc device (ioctl) driver)。
|
||||
|
||||
光纤通道端口可以用这个驱动支持IP LAN的流量(Fusion MPT LAN driver)。
|
||||
|
||||
我可以读到你们的想法-你们会想到对于这个还有另外一篇文章。是的,你们想对了。请继续关注这个系列的下一篇文章。
|
||||
|
||||
如果你喜欢这个系列,请在Linux.org和/或者Google+上发表评论告诉我你有多喜欢这个系列,并且告诉我你想在今后的文章中希望看到的方面。或者给我发邮件DevynCJohnson@Gmail.com)。谢谢!
|
||||
|
||||
想要更多地了解作者,请检查下面的签名栏中的链接(译注:原文所在论坛有)
|
||||
|
||||
如果你已经完整地阅读了这篇文章,那么你应该已经看到单词"Facebook"三次了。如果没有,你没有阅读全部文章。
|
||||
|
||||
单词"Facebook"在这段中,上一段,和一个注解中。我打赌你阅读了上面的段落而没有通读文章来试图寻找第三个单词实例。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-13.4714/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,118 @@
|
||||
戴文的Linux内核专题:18 配置内核 (14)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.566/)
|
||||
|
||||
你好! 准备好读另一篇很酷的Linux内核文章了么?
|
||||
|
||||
接下来,在我们的长期追求中,我们可以启用/禁用"Fusion MPT logging facility"。MPT代表"Message Passing Technology"(消息传递技术)。Fusion驱动是由LSI Logic公司开发。MPT一种进程间使用的特定消息策略。这个技术是同步的意味着进程将会等待所需的消息。
|
||||
|
||||
在这之后,如果计算机处理拥有火线端口就应该启用"FireWire driver stack"。如果没有,那么就没有必要去启动一个不会使用到的火线驱动。火线很像USB。不过在协议、速度、物理形状和端口布局上不同。通常上,苹果设备使用火线和USB。一些PC有火线端口,但是不像USB口那样普及。
|
||||
|
||||
一些火线控制器使用OHCI-1394规范(OHCI-1394 controllers)。如果是这样,启用这个驱动。
|
||||
|
||||
为了使用火线存储设备,启用下一个驱动(Storage devices (SBP-2 protocol))。这个驱动提供了火线存储单元与火线总线通信的协议(the card with the attached FireWire ports)。一些火线扫描仪同样需要这个驱动。
|
||||
|
||||
IPv4可以用在火线端口(IP networking over 1394)。IEEE 1394或者简单的"1394"就是火线。使用IPv4在火线多播有局限。
|
||||
|
||||
"Nosy"是"FireWire PCILynx"卡上的流量监控(Nosy - a FireWire traffic sniffer for PCILynx cards)。
|
||||
|
||||
下一步,可以支持I2O设备(I2O device support)。"Intelligent Input/Output (I2O)"(智能输入/输出)总线使用硬件和操作系统层的驱动。硬件驱动(hardware drivers (HDM))并不特定与任何操作系统而OS驱动(OS drivers (OSM))必须在目标操作系统上使用。OSM可以与任何HDM通信。I2O卡/总线有一个IOP- 输入/输出处理器(Input/Output Processor)。由于主CPU处理更少的数据,所以加速了系统。
|
||||
|
||||
只在缺乏SUN I2O控制器的系统上启用"Enable LCT notification"。I2C SUN固件不支持LCT通知。
|
||||
如果目标是RAID,Adaptec I2O控制器需要下一个驱动(Enable Adaptec extensions)。
|
||||
|
||||
64位的直接内存访问可以在Adaptec I2O控制器上启用(Enable 64-bit DMA)。
|
||||
|
||||
如果允许,可以配置I2O设备(I2O Configuration support)。这个特性主要用在RAID设定中。
|
||||
|
||||
可以为I2O启用支持老的输入/输出控制(Enable ioctls (OBSOLETE))。
|
||||
|
||||
可以启用I2O总线适配器的OSM软件(I2O Bus Adapter OSM)。这组OSM被用来寻找新的在其他适配器末端的I2O设备。
|
||||
|
||||
下面,可以启用I2O块设备上的OSM(I2O Block OSM)。I2O硬件上的RAID控制器需要这个OSM。
|
||||
|
||||
下面的OSM用于I2O控制器上的SCSI或者光纤通道设备。
|
||||
|
||||
如果启用了(I2O /proc support),可以通过/proc读取I2O设备的信息。
|
||||
|
||||
在启用/禁用了I2O特性,我们可以继续其他的内核特性。下面,我们看到"Macintosh device drivers"。这只对苹果设备有用。PC的Linux内核不应该有任何这些驱动启用。然而,正如许多说法都有例外一样。一些PC用户可能会使用苹果鼠标、键盘和/或者一些其他的苹果设备。再说一次,最好彻底地理解需求和正在开发的内核。
|
||||
|
||||
下一步,我们有一个用于网络的驱动(Network device support)。X11和其他的Linux软件不依赖于这个驱动,所以如果内核不会连接到另一台计算机、因特网、内联网或者网络,那么这个特性可以安全地禁用。
|
||||
|
||||
下面的驱动就像上面,但是特定于核心驱动(Network core driver support)。
|
||||
|
||||
这个驱动支持Etherchannel(Bonding driver support)。"bonding"是两条或者更多的以太网通道的融合。这也成为中继。
|
||||
|
||||
使用这个驱动(Dummy net driver support),可以在Linux中设置一个虚拟网络。虚拟网络(dummy network)就像网络中的/dev/null。任何发送给虚拟网络的数据都会永久消失,因为它会发往/dev/null。IP地址没有设置。用户可以定义他们的网络相当于/dev/null。
|
||||
|
||||
下一步,可以支持和EQL(EQL (serial line load balancing) support)。这允许两台计算机使用SLIP或者PPP协议在两条串行连接上通信。
|
||||
|
||||
光纤通道是一种用于连接存储设备到计算机的快速串行协议(Fibre Channel driver support)。
|
||||
|
||||
TMII收发器需要这个驱动(Generic Media Independent Interface device support)。MII是一种用于最高速度为100Mbit/s以太网的接口。以太网线缆用于连接到PHYceiver,这是一种以太网收发器。
|
||||
|
||||
为了通过虚拟接口组织许多以太网设备,需要"Ethernet team driver support"。
|
||||
|
||||
"MAC-VLAN support"允许用户在特定的MAC地址和某个接口上映射数据包。
|
||||
|
||||
TAP字符设备可以由MAC-VLAN接口生成(MAC-VLAN based tap driver)。TAP设备从内核中获取数据包,这样它们就可以被送往其他地方。
|
||||
|
||||
下一个特性允许虚拟vxvlan接口在3层网络上创建2层网络(Virtual eXtensible Local Area Network (VXLAN))。这通常用于隧道虚拟网络。
|
||||
|
||||
内核发送给网络的消息可任意通过这个特性记录下来(Network console logging support)。除非记录网络信息对你很重要时才启用它。禁用这个特性会增强性能。
|
||||
|
||||
这个特性允许不同参数被改变(Dynamic reconfiguration of logging targets)。这些参数包括端口号、MAC地址、IP地址和其他一些设定。
|
||||
|
||||
如果用户空间程序希望使用TAP设备,那么启用这个特性可以允许这样的活动(Universal TUN/TAP device driver support)。
|
||||
|
||||
这个驱动用于本地以太网隧道(Virtual ethernet pair device)。
|
||||
|
||||
"Virtio network driver"用于QEMU、Xen、KVM和其他虚拟机。
|
||||
|
||||
下一步,可以启用"ARCnet support"。ARCnet是一种类似令牌环本地局域网络(Local-Area-Network (LAN)协议。ARCnet代表"Attached Resource Computer Network"(附加资源计算器网络)。
|
||||
|
||||
现在,我们进入到"ATM drivers"。ATM代表"Asynchronous Transfer Mode"(异步传输模式)。ATM用于电信。
|
||||
|
||||
Marevell以太网交换机芯片需要这个驱动(Marvell 88E6060 ethernet switch chip support)。同样,这类交换机的芯片同样需要依赖模型(Marvell 88E6085/6095/6095F/6131 ethernet switch chip support)和(Marvell 88E6123/6161/6165 ethernet switch chip support)。
|
||||
|
||||
现在,我们可以学习关于"Ethernet driver support"。
|
||||
|
||||
首先我们可以启用/禁用"3Com devices"。接下来允许内核开发者选择支持哪些3Com设备。
|
||||
|
||||
下一组选项是对于不同的"Adaptec devices"和接下来的"Alteon devices"。
|
||||
|
||||
这些只是特定设备/供应商驱动。通常地,这些驱动被作为模块加入。
|
||||
|
||||
在设置了这两组选项后,接下来还有"AMD devices"和"Atheros devices"。
|
||||
|
||||
注意:请记住内核会运行在哪类硬件上。对于大量不同的设备,或许最好把它们作为模块加入
|
||||
|
||||
这里有不同特定供货商的设备驱动-"Cadence devices"、"Broadcom devices"、"Brocade devices"、"Chelsio devices"、"Cisco devices"、"Digital Equipment devices"。一些其他的特定设备/供应商驱动遵循它们。
|
||||
|
||||
接下来的驱动并不是特定设备/供应商的 "SLIP (serial line) support"。这个驱动支持SLIP和CSLIP。SLIP(Serial Line Internet Protocol)是一种用于调制解调器和串口的因特网驱动。PPP现在用来代替SLIP。CSLIP是压缩的SLIP。
|
||||
|
||||
下面,"CSLIP compressed headers"可以启用用来压缩TCP/IP头。CSLIP快于SLIP,但是想要启用CSLIP,传输和接收的计算机都必须理解CSLIP。
|
||||
|
||||
当在恶劣的模拟线路上使用SLIP时,最好启用"Keepalive and linefill",这会帮助保持连接。
|
||||
|
||||
对于质量差的网络或者7bit网络中运行IP而言,最好启用"Six bit SLIP encapsulation"。
|
||||
|
||||
现在我们可以进入流行的USB系统,但是这些是用于网络的USB驱动。
|
||||
|
||||
第一个启用/禁用的USB网络设备是"USB CATC NetMate-based Ethernet device support"。这是用于10Mbps的USB以太网EL1210A芯片设备。USB设备将会扮演和成为一个以太网设备即使硬件是USB。
|
||||
|
||||
接下来,除了设备是KLSI KL5KUSB101B芯片组(USB KLSI KL5USB101-based ethernet device support),其他与上面的驱动一样。
|
||||
|
||||
Pegasus USB是USB转以太网的适配器/转换器(USB Pegasus/Pegasus-II based ethernet device support)。
|
||||
|
||||
接下来是另外一个USB转以太网驱动(USB RTL8150 based ethernet device support)。
|
||||
|
||||
下一篇文章中,我们将继续配置USB网络系统。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-14.4765/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,121 @@
|
||||
戴文的Linux内核专题:19 配置内核 (15)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.578/)
|
||||
|
||||
你好!在这篇Linux系列文章中,我们将继续配置USB网络驱动。接着我们将进入输入设备。
|
||||
|
||||
首先,我们可以启用/禁用"Multi-purpose USB Networking Framework",这允许连接笔记本到桌面系统上。
|
||||
|
||||
下面,可以启用/禁用ASIX USB-to-Ethernet适配器驱动(ASIX AX88xxx Based USB 2.0 Ethernet Adapters)。
|
||||
|
||||
那么,还有一个ASIX适配器驱动(ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet)。
|
||||
|
||||
注意:通常地,最好将适配器驱动作为模块加入。
|
||||
|
||||
通信设备类规范(Communication Device Class specification)在这个驱动中提供(CDC Ethernet support (smart devices such as cable modems))。这个规范用于USB调制解调器。Linux系统可以将USB网络接口识别为以太网网络接口并且指定为"ethX",这里的"X"是以太设备编号。
|
||||
|
||||
下面是一个与上面类似的规范(CDC EEM support)。CDC EEM代表的是"Communication Device Class Ethernet Emulation Model"(通信设备类以太网仿真模型)。
|
||||
|
||||
CDC网络控制模型(NCM)同样有一个驱动提供了规范(CDC NCM support)。
|
||||
|
||||
这个驱动提供了"CDC MBIM (Mobile Broadband Interface Model)"规范同样也在Linux内核中(CDC MBIM support)。
|
||||
|
||||
下面,有一些供货商/设备特定驱动用于不同的USB网络设备和芯片组。
|
||||
|
||||
在这之后,有一个用于USB网络设备的通用驱动,它不需要任何特殊的驱动(Simple USB Network Links (CDC Ethernet subset))。
|
||||
|
||||
再说一次,还有更多的驱动用于供货商特定设备。
|
||||
|
||||
有趣的事实:Linux被用于制作James Cameron的电影"泰坦尼克"的特效。
|
||||
|
||||
"CDC Phonet support"是用于使用Phonet的Nokia USB调制解调器。(译注:Phonet是Nokia开发的面向数据包的通信协议,仅用于Nokia maemo/meego产品)
|
||||
|
||||
现在,我们可以进入使用802.11规范的无线局域网驱动了。
|
||||
|
||||
主要地,这里有一个供货商/设备特定驱动列表。
|
||||
|
||||
"SoftLED Support"控制着关于Wifi卡/设备的LED灯。
|
||||
|
||||
一些芯片组支持的SDIO在这个驱动中(Atheros ath6kl SDIO support)。SDIO是用于无线SD卡的SD(Secure Digital)规范的扩展。SDIO代表的是"Secure Digital Input/Output"
|
||||
|
||||
内核开发者可能注意到一些无线设备可以支持QoS。QoS代表"Quality of Service"(服务质量)。这个特性给予网络传输优先级。假设需要通过网络传输两组数据。只有一个可以先发送。QoS会先发送最重要的数据。
|
||||
|
||||
有趣的事实:技术上来说,Linux并不是一个操作系统。Linux是一种内核而GNU/Linux是操作系统。。
|
||||
|
||||
WAN卡需要"Generic HDLC layer"。HDLC代表"High-Level Data Link Control"(高级数据链路控制)。这是一个数据链路层协议。
|
||||
|
||||
原生HDLC可以通过"Raw HDLC support"驱动启用。
|
||||
|
||||
"Raw HDLC Ethernet device support"驱动允许HDLC层模拟以太网。
|
||||
|
||||
cHDLC驱动提供了一个HDLC的扩展,同样也称作Cisco HDLC(Cisco HDLC support)。
|
||||
|
||||
Linux内核同样也提供了一个HDLC的"Frame Relay support"(帧中继)驱动。帧中继是2层协议。
|
||||
|
||||
HDLC同样支持PPP(Synchronous Point-to-Point Protocol (PPP) support)和X.25(X.25 protocol support)。
|
||||
|
||||
接下来,这个驱动提供了DLCI下的帧中继(Frame Relay DLCI support)。
|
||||
|
||||
"LAPB over Ethernet driver"创建一个允许用户在以太网上使用LAPB的点到点连接到另一台计算机的设备文件。这个设备文件对于第一个此类设备通常是/dev/lapb0。
|
||||
|
||||
用这个驱动,X.25帧可以通过电话线发送(X.25 async driver)。特别地,这个驱动允许X.25使用异步串行。
|
||||
|
||||
对于ISA SBNI12-xx有一种特殊的驱动(Granch SBNI12 Leased Line adapter support)。这种卡对于租用线路的调制解调器是一种便宜的替代。
|
||||
|
||||
下一个驱动允许使用并行连接携带已安排的流量(Multiple line feature support)。这允许Linux系统更加有效地在SBNI12适配器上管理并行连接。一些Linux用户声称这个驱动双倍加速了他们的速度。然而,这个我没有亲身测试了解。
|
||||
|
||||
接下来,可以配置"IEEE 802.15.4 drivers"。这个是对于慢速WAN设备。这是一个控制媒体和无线网络物理层的标准。这个规范在不同的大洲使用不同的频率。不如,在欧洲,这类无线设备会使用868.0-868.6MHz的频率。
|
||||
|
||||
这个目录中的第一个设定是fake LR-WPAN驱动(Fake LR-WPAN driver with several interconnected devices)。LR-WPAN代表"Low-Rate Wireless Personal Area Network"(低速无线个人网络)。
|
||||
|
||||
有趣的事实:目前内核中只有大约2%的代码是由Linus Torvalds写的。
|
||||
|
||||
VMware使用vmxnet3虚拟以太网需要这个驱动(VMware VMXNET3 ethernet driver)。当在为大量用户编译内核时,最好将这个启用为一个模块,因为一些人可能并不希望在VMware上使用以太网。
|
||||
|
||||
Hyper-V虚拟网络需要这个驱动(Microsoft Hyper-V virtual network driver)。你可能想知道这个是否与微软的Hyper-V相同。使得,Linux支持Hyper-V。
|
||||
|
||||
数字电话服务ISDN由这个驱动提供(ISDN support)。ISDN代表"Integrated Services Digital Network"(综合业务数字网)。在法国,ISDN被称为RNIS,代表" Réseau numérique à intégration de services"。有一台ISDN适配器,计算机可以开始并接收语音呼叫。这允许计算机用来做因待机或者其他一些电话服务设备。ISDN同样也可以携带视频信息。
|
||||
|
||||
现在,我们可以进入输入设备了(Input device support)。这些是给计算机信息的设备。鼠标和键盘是最常被使用和了解的输入设备。扫描仪是另外一种输入设备的例子。
|
||||
|
||||
首先是一个支持不同触觉反馈设备的驱动(Support for memoryless force-feedback devices)。比如,许多游戏控制器的震动就是一种触觉反馈。
|
||||
|
||||
一些输入设备会检测硬件的状态(Polled input device skeleton)。这类行为需要这个驱动。
|
||||
|
||||
使用稀疏键盘映射的输入设备需要这个驱动(Sparse keymap support library)。键盘映射是键盘的布局信息。
|
||||
|
||||
下面,是另外一种键盘映射(Matrix keymap support library)。
|
||||
|
||||
注意:当为广泛的用户组编译内核时,包含大多数或者全部输入设备作为模块,因为通常不知道用户可能插到计算机上的设备类型。
|
||||
|
||||
有趣的事实:Vanilla内核就是Linux自己的原始内核,是未改变的状态。
|
||||
|
||||
"Mouse interface"对于鼠标创建了两个不同的设备文件。这两个设备文件是/dev/input/mouseX 和 /dev/input/mice。
|
||||
|
||||
下一个驱动创建了一个psaux设备文件并且它是/dev/input/mice的别名 (Provide legacy /dev/psaux device)。psaux设备文件是/dev/psaux。
|
||||
|
||||
如果系统有一块数位板,那么需要设置水平分辨率(Horizontal screen resolution)和垂直分辨率(Vertical screen resolution)。数位板是一种支持允许用户绘画的触控笔的触摸屏。另外的触摸屏无法支持如此复杂的输入。
|
||||
|
||||
下一个驱动支持操纵杆和游戏手柄(Joystick interface)。这个驱动会创建/dev/input/jsX文件。
|
||||
|
||||
"Event interface"驱动允许输入设备通过dev/input/eventX访问。
|
||||
|
||||
"Event debugging"驱动会输出所有的输入事件到系统日志中。除了要调试系统否则不要以任何理由启用它。显然地,这么做为了性能原因,但是我这么建议禁用的主要原因是安全目的。所有的按键都会被明文记录下来包括密码。
|
||||
|
||||
下面,列出了不同的键盘(Keyboards)配置驱动,接下来是鼠标(Mice)驱动和操纵杆和游戏手柄(joystick/gamepad)驱动。
|
||||
|
||||
在这之后,列出了不同特定的平板硬件/供货商的不同驱动(Tablets)。在这之后是触摸屏的驱动列表。
|
||||
|
||||
最后一组输入设备驱动是对于特定硬件和供货商的杂项驱动列表(Miscellaneous devices)。
|
||||
|
||||
这个系列的下一篇文章会讨论输入端口。不要忘记阅读这个系列的其他文章和这个网站。谢谢!
|
||||
|
||||
**致粉丝: 谢谢**你们的邮件告诉我你们对这些文章的喜爱。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-15.4793/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,117 @@
|
||||
戴文的Linux内核专题:20 配置内核 (16)
|
||||
================================================================================
|
||||
![](http://www.linux.org/attachments/slide-jpg.587/)
|
||||
|
||||
欢迎来到下一篇Linux内核文章。在本篇里,我们将讨论输入/输出端口。
|
||||
|
||||
首先,PS/2鼠标和AT键盘需要"i8042 PC Keyboard controller"驱动。在USB之前,鼠标和键盘使用圆形端口的PS/2端口。AT键盘是一种84键使用AT端口的IBM键盘。AT端口有5针而PS/2口有六针。
|
||||
|
||||
使用COM口(有时也称RS232串口)的输入设备需要这个驱动(Serial port line discipline)。COM是一种串口,意味着每次传输一位。
|
||||
|
||||
TravelMate笔记本需要这个特殊的驱动来使用连接到QuickPort的鼠标(ct82c710 Aux port controller)。
|
||||
|
||||
对于PS/2 mice、AT keyboards 和 XT keyboards的并口适配器使用这个驱动(Parallel port keyboard adapter)。
|
||||
|
||||
"PS/2 driver library"用于PS/2鼠标和AT键盘。
|
||||
|
||||
可以启用"Raw access to serio ports"来允许设备文件作为字符文件来使用。
|
||||
|
||||
下面,下面有一个用于"Altera UP PS/2 controller"的驱动。
|
||||
|
||||
PS/2复用同样需要一个驱动(TQC PS/2 multiplexer)。
|
||||
|
||||
ARC FPGA平台对于PS/2控制器需要特殊的驱动(ARC PS/2 support)。
|
||||
|
||||
注意:我想要说清楚这篇文章中讨论的PS/2空孩子气并不是Sony的PlayStation上的游戏控制器。这篇文章讨论的是6针鼠标/键盘端口。控制器是一种有PS/2端口的卡。
|
||||
|
||||
"Gameport support"提供对15针gameport的支持。gameport是一种曾经被很多游戏设备使用直到USB端口的发明的15针口。
|
||||
|
||||
下一个驱动是在ISA或者PnP总线卡上的gameport驱动(Classic ISA and PnP gameport support)。ISA代表"Industry Standard Architecture"(工业标准架构)并且它是一种在PCI之前的并行总线标准。PnP代表"Plug-and-Play"(即插即用)并且他是一种在ISA之前的通用标准。
|
||||
|
||||
"PDPI Lightning 4 gamecard support"提供了一个有gameport的游戏卡的专有驱动。
|
||||
|
||||
SoundBlaster Audigy卡是一种专有gameport卡(SB Live and Audigy gameport support)。
|
||||
|
||||
ForteMedia FM801 PCI音频控制器在卡上有一个音频控制器(ForteMedia FM801 gameport support)。这个驱动只支持gameport。
|
||||
|
||||
下一步,我们可以进入"Character devices"。字符设备以字符传输数据。
|
||||
|
||||
首先,可以启用/禁用TTY(Enable TTY)。移除TTY会节约很多空间,但是许多终端和这类设备需要TTY。除非你知道你在做什么,否则不要禁用TTY。
|
||||
|
||||
致我的粉丝:如果你知道一个禁用TTY的理由,你能在下面发表你的答案并与我们共享么?谢谢!
|
||||
|
||||
下一步,可以启用/禁用"Virtual terminals"(虚拟终端)。再说一次,这个可以节约很多空间,但是虚拟终端很重要。
|
||||
|
||||
下一个驱动支持字体映射和Unicode转换(Enable character translations in console)。这用于转换ASCII到Unicode。
|
||||
|
||||
虚拟终端可以用这个驱动作为系统控制台(Support for console on virtual terminal)。系统控制台管理着登陆和内核信息/警告。
|
||||
|
||||
虚拟终端必须通过控制台驱动与物理终端交互(Support for binding and unbinding console drivers)。在虚拟终端可以这么做之前,控制台驱动必须被加载。当虚拟终端关闭后,控制台终端必须被卸载。
|
||||
|
||||
下一个驱动提供了对Unix98 PTY驱动的支持(Unix98 PTY support)。这是Unix98伪终端。
|
||||
|
||||
有趣的事实:Linux内核允许某个文件系统一次在很多地方被多次挂载。
|
||||
|
||||
接下来,可以支持"Support multiple instances of devpts"(译注:允许多个"devpts"文件系统实例)。devpts文件系统用于伪终端的slave。
|
||||
|
||||
过时的PTY同样可以启用(Legacy (BSD) PTY support)。
|
||||
|
||||
可以设置最大数量的使用中的过时PTS(Maximum number of legacy PTY in use)。
|
||||
|
||||
下面的驱动可以用于提供对其他驱动不支持的串口的支持 (Non-standard serial port support)。
|
||||
|
||||
下面有一些用于特定板和卡的驱动。
|
||||
|
||||
这个驱动支持GSM MUX协议(GSM多路复用)(GSM MUX line discipline support (EXPERIMENTAL))。
|
||||
|
||||
下一个驱动启用kmen设备文件(/dev/kmem virtual device support)。kmem通常用于内核调试。kmem可以用于读取某些内核变量和状态。
|
||||
|
||||
Stallion卡上面有许多串口Stallion multiport serial support)。这个驱动特别支持这块卡。
|
||||
|
||||
下面,我们可以进入到串行设备驱动了。如前所述,串行设备每次传输一位。
|
||||
|
||||
第一个驱动用于标准串口支持(8250/16550 and compatible serial support)。
|
||||
|
||||
在这个驱动下,即插即用(Plug-and-Play)同样存在于串口中(8250/16550 PNP device support)。
|
||||
|
||||
下面的驱动允许串口用于连接一个终端后作为控制台(Console on 8250/16550 and compatible serial port)。
|
||||
|
||||
一些UART控制器支持直接内存访问(DMA support for 16550 compatible UART controllers)。UART代表的是"Universal Asynchronous Receiver/Transmitter"(通用异步收发)。UART控制器转换串行到并行,反之亦然。
|
||||
|
||||
下一步,这个驱动提供了标准PCI串行设备支持(8250/16550 PCI device support)。
|
||||
|
||||
16位PCMCIA串行设备由这个驱动支持(8250/16550 PCMCIA device support)。记住,PCMCIA是一种通常使用于笔记本的PC卡。
|
||||
|
||||
可以设置最大数量支持的串口(Maximum number of 8250/16550 serial ports),接着是在启动中注册的最大数量(Number of 8250/16550 serial ports to register at runtime)。
|
||||
|
||||
为了扩展像HUB6的串行能力,启用这个驱动(Extended 8250/16550 serial driver options)。
|
||||
|
||||
一个特殊驱动用于支持多于4种的过时串口(Support more than 4 legacy serial ports)。
|
||||
|
||||
当启用这个驱动后,可以共享串口中断(Support for sharing serial interrupts)。
|
||||
|
||||
使用这个驱动可以自动检测串口中断请求(Autodetect IRQ on standard ports)。
|
||||
|
||||
RSA串口同样也在Linux内核中支持(Support RSA serial ports)。RSA代表的是"Remote Supervisor Adapter"(远程管理适配器)。RSA是一种IBM特定的硬件。
|
||||
|
||||
下面,有不同的供应商/设备特定驱动。
|
||||
|
||||
下面有一个使用printk输出用户信息的TTY驱动(TTY driver to output user messages via printk)。printk(print kernel)是一种通常打印启动信息的特殊软件。任何由printk显示的字符串通常在/var/log/messages文件里。shell命令"dmesg"显示所有被printk使用的字符串。
|
||||
|
||||
下面,我们可以启用/禁用并口打印机的支持(Parallel printer support)。
|
||||
|
||||
接下来的驱动允许打印机作为一个控制台(Parallel printer support)。这意味着内核消息会被逐字地由打印机打印。通常地在这个系列中使用"print"(打印)这个单词时,意味这将输出信息到屏幕上。而这次,字面上的意思是将数据输出在纸上。
|
||||
|
||||
以下的驱动使设备文件在/dev/parport/中(Support for user-space parallel port device drivers)。这使得一些进程可以访问。
|
||||
|
||||
再说一次,Linux内核有许多特性和驱动,所以我们还会在下一篇文章中继续讨论更多的驱动。谢谢!
|
||||
|
||||
致粉丝:我们正在接近配置过程的终点。我有一张你们很多人想知道的内核话题列表。这些话题包含了安装内核、管理模块、加入第三方驱动、还有许多其他有趣的建议和要求。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-16.4835/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
115
translated/ncdu – Ncurses Based Disk Usage Utility.md
Normal file
115
translated/ncdu – Ncurses Based Disk Usage Utility.md
Normal file
@ -0,0 +1,115 @@
|
||||
ncdu-基于Ncurses的磁盘实用工具
|
||||
===
|
||||
|
||||
几天前,我们谈论了[gt5][1](一个具有图形前端的磁盘实用工具)。接着上次,继续介绍可供选择的磁盘实用工具,我们今天要讨论的是一个基于ncurese的磁盘实用工具,可以远程运行但没有图形界面。我们要介绍的这个命令行工具叫做**ncdu**。
|
||||
|
||||
###ncdu-基于Ncurses的du可选程序
|
||||
|
||||
这个命令行工具是一个基于curses版本的标准du命令。它可帮你在没有安装图形环境的情况下快速查看系统的磁盘使用统计
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-main.png)
|
||||
|
||||
###检测环境
|
||||
- 操作系统 – Ubuntu 13.04
|
||||
- Shell – Bash 4.2.45
|
||||
- 应用 – ncdu 1.9
|
||||
|
||||
###一个简要手册
|
||||
|
||||
这儿是一些ncdu命令的例子:
|
||||
|
||||
**1. 默认输出**
|
||||
|
||||
执行以下**ncdu**命令,你会观察到,它会先扫描磁盘然后以递减的顺序显示各个目录下的空间使用情况。
|
||||
|
||||
**> 扫描**
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-0.png)
|
||||
|
||||
**> 输出**
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-1.png)
|
||||
|
||||
你会看到在输出里显示了一个磁盘使用情况表。假如你要扫描整个文件系统,你可以在运行**ncdu**命令时加上**-x**选项。
|
||||
|
||||
**2. 按i可以得到选定目录的更多信息**
|
||||
|
||||
如你所见,第一项默认选中。想要知道选定项的更多信息,可以按**i**。
|
||||
|
||||
下面给出一个例子:
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-2.png)
|
||||
|
||||
如你所见,显示了目录,类型,大小,实际占用空间等。项返回,再按一次**i**。
|
||||
|
||||
**3. 在ncdu的界面中删除目录**
|
||||
|
||||
在ncdu的界面中删除目录,只需要选中目录,然后按**d**。
|
||||
|
||||
下面给出一个例子:
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-3.png)
|
||||
|
||||
如你所见,ncdu请求用户确认。假如你选择yes,目录将会从系统中删除。
|
||||
|
||||
**4. 显示每一个目录的磁盘使用占总的磁盘空间的百分比**
|
||||
|
||||
按**g**显示每个目录大小占总的磁盘空间的百分比。
|
||||
|
||||
下面给出一个例子:
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-4.png)
|
||||
|
||||
如你所见,在输出结果的第二竖列显示了每个目录的占用的空间占总的磁盘空间的百分比。
|
||||
|
||||
**5. 获悉有关所有可使用快捷键的**
|
||||
|
||||
按**?**可获得有关快捷键,格式以及有关ncdu版本的信息。
|
||||
|
||||
下面给出一些例子:
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-5-1.png)
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-5-2.png)
|
||||
|
||||
![](http://mylinuxbook.com/wp-content/uploads/2013/10/ncdu-5-3.png)
|
||||
|
||||
想知道有关命令行选项以及其他信息,可前往[ncdu命令的Man页面][2]。
|
||||
|
||||
###下载/安装/配置
|
||||
|
||||
这儿是一些有关ncdu命令的重要链接
|
||||
|
||||
- [Home Page][3]
|
||||
- [Download Link][4]
|
||||
|
||||
当然,你也可以通过命令方式下载安装,比如apt-get,yum等。另外,Ubuntu用户可使用Ubuntu软件中心下载安装这个工具。
|
||||
|
||||
###优点
|
||||
|
||||
- 信息显示快速
|
||||
- 系统资源消耗小
|
||||
|
||||
###缺点
|
||||
|
||||
- 在大多数Linux发行版中均没有预安装
|
||||
- 有一定的学习曲线
|
||||
|
||||
###结论
|
||||
|
||||
假如你不满足于标准的du工具,想去寻找一款快速的,基于ncurses的类du工具,那么你可以试试ncdu。它提供了许多自定义选项。你一定会喜欢它的。
|
||||
|
||||
**你使用过ncdu,gt5或者其他任何类du工具吗?欢迎和我们分享你的使用经验。**
|
||||
|
||||
---
|
||||
|
||||
via: http://mylinuxbook.com/ncdu-ncurses-based-disk-usage-utility/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://mylinuxbook.com/gt5-a-graphical-alternative-to-du/
|
||||
[2]:http://linux.die.net/man/1/ncdu
|
||||
[3]:http://dev.yorhel.nl/ncdu
|
||||
[4]:http://dev.yorhel.nl/ncdu
|
Loading…
Reference in New Issue
Block a user