mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-28 23:20:10 +08:00
Merge branch 'master' of https://github.com/LCTT/TranslateProject.git
This commit is contained in:
commit
7c27e836d8
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,3 +2,4 @@
|
||||
members.md
|
||||
*.html
|
||||
*.bak
|
||||
.DS_Store
|
||||
|
73
README.md
73
README.md
@ -40,6 +40,8 @@ LCTT的组成
|
||||
- CORE [geekpi](https://github.com/geekpi),
|
||||
- CORE [GOLinux](https://github.com/GOLinux),
|
||||
- CORE [reinoir](https://github.com/reinoir),
|
||||
- CORE [bazz2](https://github.com/bazz2),
|
||||
- CORE [zpl1025](https://github.com/zpl1025),
|
||||
- Senior [tinyeyeser](https://github.com/tinyeyeser),
|
||||
- Senior [vito-L](https://github.com/vito-L),
|
||||
- Senior [jasminepeng](https://github.com/jasminepeng),
|
||||
@ -47,66 +49,73 @@ LCTT的组成
|
||||
- Senior [vizv](https://github.com/vizv),
|
||||
- [runningwater](https://github.com/runningwater),
|
||||
- [luoxcat](https://github.com/Luoxcat),
|
||||
- [bazz2](https://github.com/bazz2),
|
||||
- [Vic020](https://github.com/Vic020),
|
||||
- [alim0x](https://github.com/alim0x),
|
||||
- [KayGuoWhu](https://github.com/KayGuoWhu),
|
||||
- [zpl1025](https://github.com/zpl1025),
|
||||
- [blueabysm](https://github.com/blueabysm),
|
||||
- [flsf](https://github.com/flsf),
|
||||
- [crowner](https://github.com/crowner),
|
||||
- [Linux-pdz](https://github.com/Linux-pdz),
|
||||
- [Linchenguang](https://github.com/Linchenguang),
|
||||
- [linuhap](https://github.com/linuhap),
|
||||
- [alim0x](https://github.com/alim0x),
|
||||
- [ZTinoZ](https://github.com/ZTinoZ),
|
||||
- [2q1w2007](https://github.com/2q1w2007),
|
||||
- [flsf](https://github.com/flsf),
|
||||
- [blueabysm](https://github.com/blueabysm),
|
||||
- [barney-ro](https://github.com/barney-ro),
|
||||
- [su-kaiyao](https://github.com/su-kaiyao),
|
||||
- [crowner](https://github.com/crowner),
|
||||
- [Linchenguang](https://github.com/Linchenguang),
|
||||
- [Linux-pdz](https://github.com/Linux-pdz),
|
||||
- [linuhap](https://github.com/linuhap),
|
||||
- [yechunxiao19](https://github.com/yechunxiao19),
|
||||
- [woodboow](https://github.com/woodboow),
|
||||
- [su-kaiyao](https://github.com/su-kaiyao),
|
||||
- [SPccman](https://github.com/SPccman),
|
||||
- [disylee](https://github.com/disylee),
|
||||
- [cvsher](https://github.com/cvsher),
|
||||
- [ThomazL](https://github.com/ThomazL),
|
||||
- [Stevearzh](https://github.com/Stevearzh),
|
||||
- [felixonmars](https://github.com/felixonmars),
|
||||
- [scusjs](https://github.com/scusjs),
|
||||
- [johnhoow](https://github.com/johnhoow),
|
||||
- [hyaocuk](https://github.com/hyaocuk),
|
||||
- [MikeCoder](https://github.com/MikeCoder),
|
||||
- [ThomazL](https://github.com/ThomazL),
|
||||
- [theo-l](https://github.com/theo-l),
|
||||
- [wangjiezhe](https://github.com/wangjiezhe),
|
||||
- [jiajia9linuxer](https://github.com/jiajia9linuxer),
|
||||
- [SteveArcher](https://github.com/SteveArcher),
|
||||
- [l3b2w1](https://github.com/l3b2w1),
|
||||
- [NearTan](https://github.com/NearTan),
|
||||
- [l3b2w1](https://github.com/l3b2w1),
|
||||
- [shipsw](https://github.com/shipsw),
|
||||
- [disylee](https://github.com/disylee),
|
||||
- [Love-xuan](https://github.com/Love-xuan),
|
||||
- [boredivan](https://github.com/boredivan),
|
||||
- [cvsher](https://github.com/cvsher),
|
||||
- [owen-carter](https://github.com/owen-carter),
|
||||
- [Love-xuan](https://github.com/Love-xuan),
|
||||
- [JonathanKang](https://github.com/JonathanKang),
|
||||
- [tenght](https://github.com/tenght),
|
||||
- [luoyutiantang](https://github.com/luoyutiantang),
|
||||
- [owen-carter](https://github.com/owen-carter),
|
||||
- [icybreaker](https://github.com/icybreaker),
|
||||
- [liuaiping](https://github.com/liuaiping),
|
||||
- [tenght](https://github.com/tenght),
|
||||
- [rogetfan](https://github.com/rogetfan),
|
||||
- [liuaiping](https://github.com/liuaiping),
|
||||
- [nd0104](https://github.com/nd0104),
|
||||
- [whatever1992](https://github.com/whatever1992),
|
||||
- [szrlee](https://github.com/szrlee),
|
||||
- [lfzark](https://github.com/lfzark),
|
||||
- [CNprober](https://github.com/CNprober),
|
||||
- [213edu](https://github.com/213edu),
|
||||
- [johnhoow](https://github.com/johnhoow),
|
||||
- [yujianxuechuan](https://github.com/yujianxuechuan),
|
||||
- [ggaaooppeenngg](https://github.com/ggaaooppeenngg),
|
||||
- [CNprober](https://github.com/CNprober),
|
||||
- [coloka](https://github.com/coloka),
|
||||
- [213edu](https://github.com/213edu),
|
||||
- [guodongxiaren](https://github.com/guodongxiaren),
|
||||
- [Tanete](https://github.com/Tanete),
|
||||
- [zzlyzq](https://github.com/zzlyzq),
|
||||
- [yujianxuechuan](https://github.com/yujianxuechuan),
|
||||
- [ailurus1991](https://github.com/ailurus1991),
|
||||
- [FineFan](https://github.com/FineFan),
|
||||
- [shaohaolin](https://github.com/shaohaolin),
|
||||
- [tomatoKiller](https://github.com/tomatoKiller),
|
||||
- [CHINAANSHE](https://github.com/CHINAANSHE),
|
||||
- [stduolc](https://github.com/stduolc),
|
||||
- [Maclauring](https://github.com/Maclauring),
|
||||
- [zsJacky](https://github.com/zsJacky),
|
||||
- [Hao-Ding](https://github.com/Hao-Ding),
|
||||
- [luoyutiantang](https://github.com/luoyutiantang),
|
||||
- [zsJacky](https://github.com/zsJacky),
|
||||
- [small-Wood](https://github.com/small-Wood),
|
||||
- [CHINAANSHE](https://github.com/CHINAANSHE),
|
||||
- [guodongxiaren](https://github.com/guodongxiaren),
|
||||
- [cereuz](https://github.com/cereuz),
|
||||
- [lijhg](https://github.com/lijhg),
|
||||
- [fbigun](https://github.com/fbigun),
|
||||
|
||||
|
||||
(更新于2014/09/09)
|
||||
(更新于2014/12/02,以Github contributors列表排名)
|
||||
|
||||
谢谢大家的支持!
|
||||
|
||||
@ -124,5 +133,7 @@ LCTT的组成
|
||||
* 2014/01/02 增加了Core Translators 成员: geekpi。
|
||||
* 2014/05/04 更换了新的QQ群:198889102
|
||||
* 2014/05/16 增加了Core Translators 成员: will.qian、vizv。
|
||||
* 2014/06/18 由于GOLinux令人惊叹的翻译速度和不错的翻译质量,升级为Core Translators 成员。
|
||||
* 2014/09/09 LCTT 一周年,做一年[总结](http://linux.cn/article-3784-1.html)。并将曾任 CORE 的成员分组为 Senior,以表彰他们的贡献。
|
||||
* 2014/06/18 由于GOLinux令人惊叹的翻译速度和不错的翻译质量,升级为Core Translators成员。
|
||||
* 2014/09/09 LCTT 一周年,做一年[总结](http://linux.cn/article-3784-1.html)。并将曾任 CORE 的成员分组为 Senior,以表彰他们的贡献。
|
||||
* 2014/10/08 提升bazz2为Core Translators成员。
|
||||
* 2014/11/04 提升zpl1025为Core Translators成员。
|
@ -1,7 +1,9 @@
|
||||
对Linux系统管理员有帮助的命令行工具
|
||||
Linux系统管理员的命令行工具箱目录
|
||||
================================================================================
|
||||
系统管理员(sysadmins)负责日常维护生产系统和服务。其中一个关键任务就是保证功能性服务能24小时工作。为了这个,他们得很小心地计划备份方式,灾难管理策略,定时维护,安全审查,等等。和任意其他管理一样,系统管理员也有他们的必备工具。在正确的时间正确的情况下使用合适的工具,可以帮助维护操作系统的健壮,达到最小的服务中断时间和最大的运行时间。
|
||||
|
||||
![](https://farm6.staticflickr.com/5563/14853747084_e14cf18e8f_z.jpg)
|
||||
|
||||
这篇文章会介绍一些系统管理员日常活动中最常用和有效的命令行工具。如果你想推荐其他没在这里列出来的好用的工具,别忘了在评论区里分享一下。
|
||||
|
||||
### 网络工具 ###
|
||||
@ -14,7 +16,7 @@
|
||||
|
||||
4. **mtr**:traceroute的一个变种,能根据运行时统计数据整理出每一跳的包丢失/抖动。用来评估路由路径延时很不错。
|
||||
|
||||
5. **[netcat][2]/[socat][3]**:TCP/IP网络里的瑞士军刀,可以读/写TCP/UDP协议字节流。用来调试防火墙策略和服务可用性很不错。
|
||||
5. **[netcat][2]/[socat][3]**:TCP/IP网络里的瑞士军刀,可以读/写 TCP/UDP 协议字节流。用来调试防火墙策略和服务可用性很不错。
|
||||
|
||||
6. **dig**:DNS调试工具,可以生成正向查询,反向查询,搜索域名服务器,检查CNAME,MX和其他DNS记录。可以在侦错的时候查询特定的DNS服务器。
|
||||
|
||||
@ -68,7 +70,7 @@
|
||||
|
||||
29. **[parted][15]**:另一个磁盘分区编辑器,支持超过2TB的磁盘的GPT(GUID分区表)格式。gparted是parted的一个前端GTK+图形界面。
|
||||
|
||||
30. **df**:用来查看不同分区或文件路径的已用/可用存储空间和挂载点。存在一个用户友好的变种dfc。
|
||||
30. **df**:用来查看不同分区或文件路径的已用/可用存储空间和挂载点。还有一个更易用的变种dfc。
|
||||
|
||||
31. **du**:用来查看不同文件和目录的当前磁盘占用情况(例如,du -sh *)。
|
||||
|
||||
@ -86,7 +88,7 @@
|
||||
|
||||
37. **tail**:用来查看一个(增长中的)日志文件的尾部。有几个变种,包括multitail(多窗口查看)和[ztail][16](支持inotify和正则表达式过滤以及颜色)。
|
||||
|
||||
38. **logrotate**:一个命令行工具,可以在根据设定的时间段拆分、压缩并邮寄旧的/大的日志文件。用来管理可能产生大量日志文件的繁忙主机很有用。
|
||||
38. **logrotate**:一个命令行工具,可以在根据设定的时间段拆分、压缩并通过邮件发送旧的/大的日志文件。用来管理可能产生大量日志文件的繁忙主机很有用。
|
||||
|
||||
39. **grep/egrep**:可以通过特定的模式或正则表达式过滤日志内容。变种包括用户更友好的ack和速度更快的ag。
|
||||
|
||||
@ -96,7 +98,7 @@
|
||||
|
||||
### 备份工具 ###
|
||||
|
||||
42. **[rsync][17]**:一个快速的单向增量备份和镜像工具。常用于复制一个数据仓库到线下存储,可以选择通过SSH或stunnel的加密连接。
|
||||
42. **[rsync][17]**:一个快速的单向增量备份和镜像工具(LCTT 译注:rsync 应是双向的)。常用于复制一个数据仓库到线下存储,可以选择通过SSH或stunnel的加密连接。
|
||||
|
||||
43. **[rdiff-backup][18]**:另一个有效利用带宽的增量备份工具。管理两个连续快照之间的差分。
|
||||
|
||||
@ -104,13 +106,13 @@
|
||||
|
||||
### 性能监视工具 ###
|
||||
|
||||
45. **top**:一个命令行的进程查看程序。可以监视系统负载、进程状态、CPU和内存占用。有一个更用户友好的变种htop。
|
||||
45. **top**:一个命令行的进程查看程序。可以监视系统负载、进程状态、CPU和内存占用。有一个更易用的变种htop。
|
||||
|
||||
46. **ps**:显示系统所有运行中进程的一个快照。输出可以定制成显示PID、PPID、用户、负载、内存、积累的用户/系统时间、启动时间、以及更多。有一个变种是pstree可以用树结构显示进程。
|
||||
46. **ps**:显示系统所有运行中进程的一个快照。输出可以定制成显示PID、PPID、用户、负载、内存、积累的用户/系统时间、启动时间、以及更多。有一个变种pstree可以用树结构显示进程。
|
||||
|
||||
47. **[nethogs][19]**:一个带宽监视工具,按进程来分组显示活动网络连接,实时汇报每个进程占用的(上传/下载)带宽。
|
||||
|
||||
48. **ngxtop**:一个网页服务器访问日志解析和监视工具,界面是受top命令启发。它可以实时汇报整理过的页面请求列表,包括频率、大小、HTTP返回值、IP地址,等等。
|
||||
48. **ngxtop**:一个网页服务器访问日志解析和监视工具,界面受到了top命令启发。它可以实时汇报整理过的页面请求列表,包括频率、大小、HTTP返回值、IP地址,等等。
|
||||
|
||||
49. **vmstat**:一个简单的命令行工具,可以显示多个实时系统特征,例如进程数、剩余内存、分页状态、CPU占用、块设备I/O活动、中断/上下文切换统计、等等。
|
||||
|
||||
@ -138,9 +140,9 @@
|
||||
|
||||
59. **dpkg**:一个用来手动安装.deb包的命令行工具。强烈建议尽可能的使用apt。
|
||||
|
||||
60. **yum**:基于红帽的系统的事实上的自动包管理工具,比如RHEL、CentOS或Fedora。另一个救生圈。
|
||||
60. **yum**:用于基于红帽的系统的自动包管理工具,比如RHEL、CentOS或Fedora。这是另一个救生圈!
|
||||
|
||||
61. **rpm**:通常我都是rpmyum一下。有很多有用的参数,比如-q、-f、-l可以分别用来查询、指定文件和路径。
|
||||
61. **rpm**:通常我都是使用 rpm 来配合 yum 使用。有很多有用的参数,比如-q、-f、-l可以分别用来查询、指定文件和路径。
|
||||
|
||||
### 硬件工具 ###
|
||||
|
||||
@ -158,7 +160,7 @@ via: http://xmodulo.com/2014/08/useful-cli-tools-linux-system-admins.html
|
||||
|
||||
作者:[Sarmed Rahman][a]
|
||||
译者:[zpl1025](https://github.com/zpl1025)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,4 +1,4 @@
|
||||
Postfix的20个问答题
|
||||
20个关于Postfix的面试题
|
||||
================================================================================
|
||||
### 问题1:什么是 Postfix,它的默认端口是多少? ###
|
||||
|
||||
@ -10,19 +10,19 @@ Postfix的20个问答题
|
||||
|
||||
### 问题3:什么是 MTA,它在邮件系统中扮演什么角色? ###
|
||||
|
||||
答:MTA 是 Mail Transfer Agent 的缩写。MTA 负责接收和发送邮件、确定发送路径和地址重写(LCTT:address rewriting,就是完善发送地址,比如将“username”这个地址重写为“username@example.com”)。本地转发就是将邮件发送给 MDA。Qmail、Postix、Sendmail 都是 MTA。
|
||||
答:MTA 是 Mail Transfer Agent (邮件传输代理)的缩写。MTA 负责接收和发送邮件、确定发送路径和地址重写(LCTT译注:address rewriting,就是完善发送地址,比如将“username”这个地址重写为“username@example.com”)。本地转发就是将邮件发送给 MDA。Qmail、Postix、Sendmail 都是 MTA。
|
||||
|
||||
### 问题4:什么是 MDA? ###
|
||||
|
||||
答:MDA 是 Mail Delivery Agent 的缩写。MDA 这个程序用于从 MTA 获取邮件并传送至本地接受者的邮箱。MDA 通常可以过滤邮件或为邮件分类。一个 MDA 也能决定一封邮件是否需要转发到另一个邮箱地址。Procmail 就是一个 MDA。
|
||||
答:MDA 是 Mail Delivery Agent (邮件投递代理)的缩写。MDA 这个程序用于从 MTA 获取邮件并投递至本地收件人的邮箱。MDA 通常可以过滤邮件或为邮件分类。一个 MDA 也能决定一封邮件是否需要转发到另一个邮箱地址。Procmail 就是一个 MDA。
|
||||
|
||||
### 问题5:什么是 MUA? ###
|
||||
|
||||
答:MUA 是 Mail User Agent 的缩写。MUA 是一个邮件客户端软件,可以用来写邮件、发送邮件、接收邮件。发送邮件时使用的是 MTA;接收邮件时可以从邮件存储区直接收取,也可以通过 POP/IMAP 服务器间接收取。Outlook、Thunkerbird、Evolution 都是 MUA。
|
||||
答:MUA 是 Mail User Agent (邮件用户代理)的缩写。MUA 是一个邮件客户端软件,可以用来写邮件、发送邮件、接收邮件。发送邮件时使用的是 MTA;接收邮件时可以从邮件存储区直接收取,也可以通过 POP/IMAP 服务器间接收取。Outlook、Thunkerbird、Evolution 都是 MUA。
|
||||
|
||||
### 问题6:Mailserver 里 postmaster 的作用是什么? ###
|
||||
### 问题6:邮件服务器里 postmaster 的作用是什么? ###
|
||||
|
||||
答:邮件管理者一般就是 postmaster。一个 postmaster 的责任就是保证邮件系统正常工作、更新系统配置、添加/删除邮箱帐号,以及其他。每个域中必须存在一个 postmaster 的别名(LCTT:postmaster 别名的作用就是能让你的邮件系统以外的用户往邮件系统里面的用户发邮件,当然也能接收来自系统内部用户发送出来的邮件),用于将邮件发往正确的用户。
|
||||
答:邮件管理者一般就是 postmaster。一个 postmaster 的责任就是保证邮件系统正常工作、更新系统配置、添加/删除邮箱帐号,以及其他工作。每个域中必须存在一个 postmaster 的别名(LCTT译注:postmaster 别名用于接受一些其它服务器/用户对该邮件系统的沟通邮件,如关于垃圾邮件拒收的投诉等,通常都会直接被邮件服务器的管理员所接受。一些系统错误和提示的邮件,也往往以postmaster 作为发件人),用于将邮件发往正确的用户。
|
||||
|
||||
### 问题7:Postfix 都有些什么重要的进程? ###
|
||||
|
||||
@ -31,10 +31,10 @@ Postfix的20个问答题
|
||||
- **master**:这条进程是 Postfix 邮件系统的大脑,它产生所有其他进程。
|
||||
- **smtpd**:作为服务器端程序处理所有外部连进来的请求。
|
||||
- **smtp**:作为客户端程序处理所有对外发起连接的请求。
|
||||
- **qmgr**:它是 Postfix 邮件系统的心脏,处理和控制邮件列表里面的所有消息。
|
||||
- **local**:这是 Postfix 自有的本地传送代理,就是它负责把邮件保存到邮箱里。
|
||||
- **qmgr**:它是 Postfix 邮件系统的心脏,处理和控制邮件队列里面的所有消息。
|
||||
- **local**:这是 Postfix 自有的本地投递代理MDA,就是它负责把邮件保存到邮箱里。
|
||||
|
||||
### 问题8:Postfix 服务器的配置什么是什么? ###
|
||||
### 问题8:Postfix 服务器的配置文件是什么? ###
|
||||
|
||||
答:有两个主要配置文件:
|
||||
|
||||
@ -45,9 +45,9 @@ Postfix的20个问答题
|
||||
|
||||
答:使用这个命令重启:`service postfix restart`;使用这个命令设为开机启动:`chkconfig postfix on`
|
||||
|
||||
### 问题10:怎么查看 Postfix 的邮件列表? ###
|
||||
### 问题10:怎么查看 Postfix 的邮件队列? ###
|
||||
|
||||
答:Postfix 维护两个列表:未决邮件队列(pending mails queue)和等待邮件队列(deferred mail queue)。等待队列包含了暂时发送失败、需要重新发送的邮件,Postfix 会定期重发(默认5分钟,可自定义设置)。(LCTT:其实 Postfix 维护5个队列:输入队列,邮件进入 Postfix 系统的第一站;活动队列,qmgr 将输入队列的邮件移到活动队列;等待队列,保存暂时不能发送出去的邮件;故障队列,保存受损或无法解读的邮件;保留队列,将邮件无限期留在 Postfix 队列系统中。)
|
||||
答:Postfix 维护两个队列:未决邮件队列(pending mails queue)和等待邮件队列(deferred mail queue)。等待队列包含了暂时发送失败、需要重新发送的邮件,Postfix 会定期重发(默认5分钟,可自定义设置)。(LCTT译注:其实 Postfix 维护5个队列:输入队列,邮件进入 Postfix 系统的第一站;活动队列,qmgr 将输入队列的邮件移到活动队列;等待队列,保存暂时不能发送出去的邮件;故障队列,保存受损或无法解读的邮件;保留队列,将邮件无限期留在 Postfix 队列系统中。)
|
||||
|
||||
列出邮件队列里面所有邮件:
|
||||
|
||||
@ -85,9 +85,9 @@ Postfix的20个问答题
|
||||
|
||||
# echo "Test mail from postfix" | mail -s "Plz ignore" info@something.com
|
||||
|
||||
### 问题15:什么是“开放邮件转发”? ###
|
||||
### 问题15:什么是“开放邮件转发(Open Relay)”? ###
|
||||
|
||||
答:开放邮件转发是 SMTP 服务器的一项设定,允许因特网上其他用户能通过该服务器转发邮件,而不是直接发送到某个帐号。过去,这项功能在许多邮件服务器中都是默认开启的,但是现在已经不再流行了,因为邮件转发会导致大量垃圾邮件和病毒邮件在网络上肆虐。
|
||||
答:开放邮件转发是 SMTP 服务器的一项设定,允许因特网上任意的其他用户能通过该服务器转发邮件,而不是直接发送到某个帐号的服务器或只允许授权用户通过它来发送邮件。过去,这项功能在许多邮件服务器中都是默认开启的,但是现在已经不再流行了,因为邮件转发会导致大量垃圾邮件和病毒邮件在网络上肆虐。
|
||||
|
||||
### 问题16:什么是 Postfix 上的邮件转发主机? ###
|
||||
|
||||
@ -95,11 +95,11 @@ Postfix的20个问答题
|
||||
|
||||
### 问题17:什么是灰名单? ###
|
||||
|
||||
答:灰名单(LCTT:介于白名单和黑名单之间)用于拦截垃圾邮件。一个 MTA 使用灰名单时就会“暂时拒绝”未被识别的发送者发来的所有邮件。如果邮件是正当合理的,发起者会在一段时间后重新发送,然后这份邮件就能被接收。(LCTT:灰名单基于这样一个事实,就是大多数的垃圾邮件服务器和僵尸网络的邮件只发送一次,而会忽略要求它们在一定的时间间隔后再次发送的请求。)
|
||||
答:灰名单(LCTT译注:介于白名单和黑名单之间)是一种用于拦截垃圾邮件的技术。一个 MTA 使用灰名单时就会“暂时拒绝”未被识别的发送者发来的所有邮件。如果邮件是正当合理的,发起者会在一段时间后重新发送,然后这份邮件就能被接收。(LCTT译注:灰名单基于这样一个事实,就是大多数的垃圾邮件服务器和僵尸网络的邮件只发送一次,而会忽略要求它们在一定的时间间隔后再次发送的请求。)
|
||||
|
||||
### 问题18:邮件系统中 SPF 记录有什么重要作用? ###
|
||||
|
||||
答:SPF 是 Sender Policy Framework 的缩写,用于帮助域的拥有者确认发送方是否来自他们的域,目的是其他邮件系统能够保证发送方在发送邮件时是否经过授权 —— 这种方法可以减小遇到邮件地址欺骗、网络钓鱼和垃圾邮件的风险。
|
||||
答:SPF 是 Sender Policy Framework 的缩写,用于帮助邮件域的拥有者确认发送方是否来自他们的域,目的是其他邮件系统能够保证发送方在发送邮件时来自经过授权的来源 —— 这种方法可以减小遇到邮件地址欺骗、网络钓鱼和垃圾邮件的风险。
|
||||
|
||||
### 问题19:邮件系统中 DKIM 有什么用处? ###
|
||||
|
||||
@ -115,7 +115,7 @@ via: http://www.linuxtechi.com/postfix-interview-questions-answers/
|
||||
|
||||
作者:[Pradeep Kumar][a]
|
||||
译者:[bazz2](https://github.com/bazz2)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,6 +1,6 @@
|
||||
如何在 Linux 系统中创建一个云端的加密文件系统
|
||||
如何在 Linux 系统中创建一个云端加密文件系统
|
||||
================================================================================
|
||||
[Amazon S3][1] 和 [Google Cloud Storage][2] 之类的商业云存储服务以能承受的价格提供了高可用性、可扩展、无限容量的对象存储服务。为了加速这些云产品的广泛采用,这些提供商为他们的产品基于明确的 API 和 SDK 培养了一个良好的开发者生态系统。而基于云的文件系统便是这些活跃的开发者社区中的典型产品,已经有了好几个开源的实现。
|
||||
[Amazon S3][1] 和 [Google Cloud Storage][2] 之类的商业云存储服务以能承受的价格提供了高可用性、可扩展、无限容量的对象存储服务。为了加速这些云产品的广泛采用,这些提供商为他们的产品通过明确的 API 和 SDK 培养了一个良好的开发者生态系统。而基于云的文件系统便是这些活跃的开发者社区中的典型产品,已经有了好几个开源的实现。
|
||||
|
||||
[S3QL][3] 便是最流行的开源云端文件系统之一。它是一个基于 FUSE 的文件系统,提供了好几个商业或开源的云存储后端,比如 Amazon S3、Google Cloud Storage、Rackspace CloudFiles,还有 OpenStack。作为一个功能完整的文件系统,S3QL 拥有不少强大的功能:最大 2T 的文件大小、压缩、UNIX 属性、加密、基于写入时复制的快照、不可变树、重复数据删除,以及软、硬链接支持等等。写入 S3QL 文件系统任何数据都将首先被本地压缩、加密,之后才会传输到云后端。当你试图从 S3QL 文件系统中取出内容的时候,如果它们不在本地缓存中,相应的对象会从云端下载回来,然后再即时地解密、解压缩。
|
||||
|
||||
@ -142,7 +142,7 @@ via: http://xmodulo.com/2014/09/create-cloud-based-encrypted-file-system-linux.h
|
||||
|
||||
作者:[Dan Nanni][a]
|
||||
译者:[felixonmars](https://github.com/felixonmars)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,19 +1,19 @@
|
||||
如何在Linux上验证下载文件的可靠性和完整性
|
||||
使用 GnuPG 加密签名来验证下载文件的可靠性和完整性
|
||||
================================================================================
|
||||
当你从网上下载一个文件后(比如:安装程序、ISO镜像或者一个压缩包),文件可能在不同的情况下发生了损坏,比如:由于线路传输错误、中断的下载、存储硬件错误、文件系统错误等等。除了这些错误,文件还可能在下载前或者下载中的攻击而被有意地篡改了。比如,一个攻破证书颁发机构的攻击者可以实施一个MITM攻击(中间人攻击),欺骗你从HTTPS网站上下载隐藏恶意软件的文件。
|
||||
|
||||
要保护你自己免受这些问题的困扰,建议你验证你从网上下载的文件的可靠性和完整性。特别是你下载了一个非常敏感的文件的时候)(比如:操作系统镜像、二进制应用程序、可执行安装包等等),盲目地相信下载的文件不是一个好习惯。
|
||||
要保护你自己免受这些问题的困扰,建议你去验证从网上下载的文件的可靠性和完整性。特别是你下载了一个非常敏感的文件的时候)(比如:操作系统镜像、二进制应用程序、可执行安装包等等),盲目地相信下载的文件不是一个好习惯。
|
||||
|
||||
一个快速和简单地验证下载文件的完整性的方法是使用不同的校验工具(比如:md5sum、sha356sum、cksum)来计算和比较校验码(比如:MD5、SHA、CRC)。然而,然而校验容易受到[碰撞攻击][1],而且同样不能用于验证文件的可靠性(比如:拥有者)。
|
||||
|
||||
integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
如果你想要同时验证下载文件的可靠性(拥有者)和完整性(内容),你需要依赖于加密签名。本教程中,我会描述如何使用GnuPG(GNU Privacy Guard)来检查文件的可靠性和完整性。
|
||||
|
||||
本例中我会验证一个从https://onionshare.org上下载的磁盘镜像。这个网站中,发行商会提供他们的公钥,还有它用于密钥验证的指纹。
|
||||
本例中我会验证一个从 https://onionshare.org 上下载的磁盘镜像。这个网站中,发行商会提供他们的公钥,还有它用于密钥验证的指纹。
|
||||
|
||||
![](https://farm4.staticflickr.com/3933/15360287249_1bc4380a67_z.jpg)
|
||||
|
||||
至于下载的文件,发行上也会提供它相关的PGP签名。
|
||||
至于下载的文件,发行商也会提供它相关的PGP签名。
|
||||
|
||||
![](https://farm6.staticflickr.com/5597/15360894527_e12bedce63_z.jpg)
|
||||
|
||||
@ -35,7 +35,7 @@ integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
![](https://farm6.staticflickr.com/5612/15360848908_ae171c485e_z.jpg)
|
||||
|
||||
在生成中间,你会被要求提供你的姓名和email,还有保护你私钥的密码。你同样也可以在键对要过期的时候选择(默认不会过期)。依赖于你选择的key的大小(在1024和4096位之间),key生成会花上几分钟或者更多,这由于它要求收集来自你桌面活动的大量的随机数据。(比如键盘输入、鼠标移动、磁盘访问等等)。
|
||||
在生成键对期间,你会被要求提供你的姓名和email,还有保护你私钥的密码。你同样也可以选择键对何时过期(默认不会过期)。依赖于你选择的key的大小(在1024和4096位之间),key生成会花上几分钟或者更多,同时它要求收集来自你桌面活动的大量的随机数据。(比如键盘输入、鼠标移动、磁盘访问等等,所以这个时候随便动动鼠标键盘什么的)。
|
||||
|
||||
一旦key生成完毕后,公钥和私钥会存储在~/.gnupg目录。
|
||||
|
||||
@ -45,7 +45,7 @@ integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
验证下载文件的第一步是与任何提供文件下载的人建立信任。出于此,我们下载了这个文件的公钥,并且验证公钥的拥有者是否是他或者她自称的。
|
||||
|
||||
在下载玩文件拥有者的公钥后:
|
||||
在下载完文件拥有者的公钥后:
|
||||
|
||||
$ wget https://onionshare.org/signing-key.asc
|
||||
|
||||
@ -55,7 +55,7 @@ integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
![](https://farm6.staticflickr.com/5613/15360894397_48fec1ef05_z.jpg)
|
||||
|
||||
一旦拥有者的共要导入后,他会像下面那样打印出一个key ID(比如:"EBA34B1C")。记住这个key ID。
|
||||
一旦拥有者的公钥导入后,他会像下面那样打印出一个key ID(比如:"EBA34B1C")。记住这个key ID。
|
||||
|
||||
现在,运行下面的命令检查导入的公钥的指纹:
|
||||
|
||||
@ -65,7 +65,7 @@ integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
你会看到key的指纹字符串。把这个和网站上显示的指纹做对比。如果匹配,你可以选择信任这个文件拥有者的公钥。
|
||||
|
||||
一旦你决定相信这个公钥,你可以通过编辑key来标记它:
|
||||
一旦你决定相信这个公钥,你可以通过编辑key来设置信任级别:
|
||||
|
||||
$ gpg --edit-key EBA34B1C
|
||||
|
||||
@ -83,7 +83,7 @@ integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
要注意的是不需要这样明确地给一个公钥指派信任,通过key的导入隐式地信任往往就够了。
|
||||
|
||||
给一个key隐式地分配给“完全”的信任就是任何其他由这个完全信任签名的key X都会被认为是对你有效的。通常上,key验证依赖于一个复杂的机制称之为“[信任网][2]”
|
||||
给一个key隐式地分配给“完全”的信任就是任何其他由这个完全信任签名的key X都会被认为是对你有效的。通常上,key验证依赖于一个称之为“[信任网][2]”的复杂机制。
|
||||
|
||||
回到教程,现在让我们检查导入的key列表。
|
||||
|
||||
@ -97,7 +97,7 @@ integrity by using GnuPG (GNU Privacy Guard).
|
||||
|
||||
一旦你建立了与文件拥有者和他的/她的公钥之间的信任关系,我们需要验证你从拥有者那边下载的文件的可靠性和完整性了。
|
||||
|
||||
本例中,文件拥有者分别公布了一个文件和它相关的PGP签名(.asc)。签名的角色就是认证并且在文件中加入一个时间戳
|
||||
本例中,文件拥有者分别公布了一个文件和它相关的PGP签名(.asc)。签名所起的作用就是认证(文件)并且在其中加入一个时间戳。
|
||||
|
||||
一个典型的签名(*.asc)看上去像这样。
|
||||
|
||||
@ -139,7 +139,7 @@ via: http://xmodulo.com/verify-authenticity-integrity-downloaded-file.html
|
||||
|
||||
作者:[Dan Nanni][a]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,24 +1,25 @@
|
||||
Linux中的鉴别套接字/网络的ss工具示例
|
||||
在Linux中的使用 ss 命令检查套接字/网络连接
|
||||
================================================================================
|
||||
ss是iproute2包的一部分(控制TCP/IP网络和流量的工具)。iproute2目标是替代先前用于配置网络接口,路由表和管理ARP表的标准Unix网络工具套装(通常称之为“net-tools”)。ss工具用于导出套接字统计,它可以显示与netstat类似的信息,且可以显示更多的TCP和状态信息。它也应该更加快因为它工作与内核空间。ss的操作和netstat很像所以这让它可以很容易就可以取代。
|
||||
ss是iproute2包的一部分(控制TCP/IP网络和流量的工具)。iproute2的目标是替代先前用于配置网络接口、路由表和管理ARP表的标准Unix网络工具套装(通常称之为“net-tools”)。ss工具用于导出套接字统计,它可以显示与netstat类似的信息,且可以显示更多的TCP和状态信息。因为它直接从内核空间获取信息,所以会更快。ss的操作和netstat很像,所以这让它可以很容易就可以取代。
|
||||
|
||||
### 使用和常见选项 ###
|
||||
|
||||
ss和netstat很像,默认他会显示已经建立连接的开放的非监听TCP套接字列表。并且你可以用下面的选项过滤输出:
|
||||
ss和netstat很像,默认它会显示已经建立连接的开放的非监听TCP套接字列表。并且你可以用下面的选项过滤输出:
|
||||
|
||||
- **-n** - 尝试解析服务名。
|
||||
- **-r** - 尝试解析数字地址/端口。
|
||||
- **-n** - 不要尝试解析服务名。
|
||||
- **-r** - 尝试解析数字的地址/端口。
|
||||
- **-a** - 显示所有套接字。
|
||||
- **-l** - 显示监听套接字。
|
||||
- **-p** - 显示进程人使用的套接字。
|
||||
- **-s** - 打印统计
|
||||
- **-p** - 显示使用该套接字的进程。
|
||||
- **-s** - 打印统计数据
|
||||
- **-t** - 只显示TCP套接字。
|
||||
- **-u** - 只显示UDP套接字。
|
||||
- **-d** - 只显示DCCP套接字
|
||||
- **-w** - 只显示原始套接字。
|
||||
- **-w** - 只显示RAW套接字。
|
||||
- **-x** - 只显示Unix域套接字
|
||||
- **-f FAMILY** - 显示FAMILY套接字的类型。目前支持下面这些家族:unix、inet、inet6、link、netlink。
|
||||
- **-A QUERY** - 导出套接字列表,通过逗号分隔。可以识别下面的标识符:all、inet、tcp、udp、raw、unix、packet、netlink、unix_dgram、unix_stream、packet_raw、packet_dgram。
|
||||
- **-f FAMILY** - 显示FAMILY套接字的类型。目前支持下面这些族:unix、inet、inet6、link、netlink。
|
||||
- **-A QUERY** - 指定要列出的套接字列表,通过逗号分隔。可以识别下面的标识符:all、inet、tcp、udp、raw、unix、packet、netlink、unix_dgram、unix_stream、packet_raw、packet_dgram。
|
||||
- **-o STATUS** - 列出指定状态的套接字
|
||||
|
||||
### ss 命令示例 ###
|
||||
|
||||
@ -34,13 +35,13 @@ ss和netstat很像,默认他会显示已经建立连接的开放的非监听TC
|
||||
|
||||
![ss tnap6](http://blog.linoxide.com/wp-content/uploads/2014/09/ss-tnap6.jpg)
|
||||
|
||||
**3.** 跟上面的行为一样,你只需用n代替t就会显示所有开放的UDP端口。
|
||||
**3.** 跟上面的行为一样,你只需用u代替t就会显示所有开放的UDP端口。
|
||||
|
||||
# ss -tnap
|
||||
# ss -unap
|
||||
|
||||
![ss unap](http://blog.linoxide.com/wp-content/uploads/2014/09/ss-unap.jpg)
|
||||
|
||||
**4.** 你可以使用-s标志来打印不同的有用的统计:
|
||||
**4.** 你可以使用-s标志来打印各种有用的统计数据:
|
||||
|
||||
# ss -s
|
||||
|
||||
@ -58,7 +59,7 @@ via: http://linoxide.com/linux-command/ss-sockets-network-connection/
|
||||
|
||||
作者:[Adrian Dinu][a]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,10 +1,10 @@
|
||||
UbuTricks - 在ubuntu上安装几个最新游戏和应用的脚本
|
||||
使用 UbuTricks 在ubuntu上安装最新游戏和应用
|
||||
===
|
||||
UbuTricks是一个可以帮助你在ubuntu上安装几个最新版本的游戏和应用的程序。
|
||||
|
||||
UbuTricks是一个有简单界面,基于Zenity的图形脚本。虽然早期开发中,它的目标是通过简单的界面操作来安装Ubuntu14.04 及以后发行版上应用程序的更新。
|
||||
|
||||
应用程序会自动下载安装。一些更新可能会需要ppa。其它的将会通过编译源代码安装。编译过程可能会需要一些时间,当从ppa或者deb文件安装应该会快一点,取决于你的下载速度。
|
||||
应用程序会自动下载安装。一些更新可能会需要ppa,其它的将会通过编译源代码安装。编译过程可能会需要一些时间,当从ppa或者deb文件安装应该会快一点,取决于你的下载速度。
|
||||
|
||||
###一共有以下几种安装方式:
|
||||
|
||||
@ -29,7 +29,7 @@ UbuTricks是一个有简单界面,基于Zenity的图形脚本。虽然早期
|
||||
|
||||
- PCManFM
|
||||
|
||||
###互联网
|
||||
###互联网应用
|
||||
|
||||
- Geary
|
||||
- HexChat
|
||||
@ -86,7 +86,7 @@ via: http://www.ubuntugeek.com/ubutricks-script-to-install-the-latest-versions-o
|
||||
|
||||
作者:[ruchi][a]
|
||||
译者:[DoubleShit](https://github.com/DoubleShit)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -46,7 +46,7 @@
|
||||
$ python -V
|
||||
$ python --version
|
||||
|
||||
如果你的Python CGI脚本要用来处理用户输入的数据(从一个web输入表单),然后你将需要导入Python cgi模块。这个模块可以处理用户通过web输入表单输入的数据。你可以在你的脚本中通过下面的语句导入该脚本:
|
||||
如果你的Python CGI脚本要用来处理用户输入的数据(从一个web输入表单),那么你将需要导入Python cgi模块。这个模块可以处理用户通过web输入表单输入的数据。你可以在你的脚本中通过下面的语句导入该脚本:
|
||||
|
||||
import cgi
|
||||
|
||||
@ -110,7 +110,7 @@
|
||||
</form>
|
||||
</html>
|
||||
|
||||
当"Submit"按钮点击,/var/www/cgi-bin/myscript-2.py脚本将被执行(通过action参数指定)。/var/www//html/page2.html显示在web浏览器中的图片如下所示(注意,三个输入域已经被填写了):
|
||||
当"Submit"按钮点击,/var/www/cgi-bin/myscript-2.py脚本将被执行(通过action参数指定)。/var/www//html/page2.html显示在web浏览器中的图片如下所示(注意,三个输入域已经被填写好了):
|
||||
|
||||
![](https://farm4.staticflickr.com/3935/14932853603_ffc3bd330e_z.jpg)
|
||||
|
||||
@ -131,7 +131,7 @@
|
||||
print "</p>"
|
||||
print "</html>"
|
||||
|
||||
正如前面提到,import cgi语句需要用来确保能够处理用户通过web输入表单输入的数据。web输入表单被封装在一个表单对象中,叫做cgi.FieldStorage对象。一旦开始,"Content-Type: text/html"是必需的,因为web服务器需要知道接受自CGI脚本的输出格式。用户输入的数据在包含form["firstName"].value,form["lastName"].value, and form["position"].value的语句中被接受。那些中括号中的名称和**/var/www/html/page2.html**文本输入域中定义的名称参数一致。
|
||||
正如前面提到,import cgi语句用来确保能够处理用户通过web输入表单输入的数据。web输入表单被封装在一个表单对象中,叫做cgi.FieldStorage对象。一旦开始输出,"Content-Type: text/html"是必需的,因为web服务器需要知道接受自CGI脚本的输出格式。用户输入的数据在包含form["firstName"].value,form["lastName"].value,和 form["position"].value的语句中可以得到。那些中括号中的名称和**/var/www/html/page2.html**文本输入域中定义的名称参数一致。
|
||||
|
||||
当网页上的"Submit"按钮被点击,下面的网页将被返回。
|
||||
|
||||
@ -149,7 +149,7 @@ via: http://xmodulo.com/create-use-python-cgi-scripts.html
|
||||
|
||||
作者:[Joshua Reed][a]
|
||||
译者:[su-kaiyao](https://github.com/su-kaiyao)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,6 +1,6 @@
|
||||
怎么样称得上是Linux下优秀的命令行计算器
|
||||
================================================================================
|
||||
每个现代的Linux桌面发行版都预装着一个带有图形界面的计算器程序。不过如果你的工作区中全是命令行窗口,那么你一定会在其中的一个命令行窗口中处理一些数字相关的问题。或许你在寻找一款基于命令行的计算器程序。如果是这样的话,[GNU bc][1](“basic calculator”的缩写)会是你不二的选择。当然Linux下又很多基于命令行的计算器应用,我认为GNU bc是功能最强大和最有用的。
|
||||
每个现代的Linux桌面发行版都预装着一个带有图形界面的计算器程序。不过如果你的工作区中全是命令行窗口,那么你一定会在其中的一个命令行窗口中处理一些数字相关的问题。或许你在寻找一款基于命令行的计算器程序。如果是这样的话,[GNU bc][1](“basic calculator”的缩写)会是你不二的选择。当然Linux下有很多基于命令行的计算器应用,我认为GNU bc是功能最强大和最有用的。
|
||||
|
||||
在GNU时代之前,bc实际上是一个著名的精密计算语言。它的诞生要追溯到70年代的Unix时期了。最初bc作为一个语法和C语言相似的编程语言而著名。随着时间的改变,最开始的bc演化成POSIX bc,最后变成了今天的GNU bc。
|
||||
|
||||
@ -8,19 +8,19 @@
|
||||
|
||||
现在的GNU bc是早期bc经过若干次改进和功能增强的结果。目前它被所有的主流GNU/Linux发行版所收纳。GNU bc支持高精度数字和多种数值类型(例如二进制、十进制、十六进制)的输入输出。
|
||||
|
||||
如果你对C语言很熟悉的话,你会发现bc使用了和C语言一样或相似的算术操作符。受支持的操作符包括算术运算符(+,-,*,/,%,++,--)、比较运算符(<,>,==,!=,<=,>=)、逻辑运算符(!,&&,||)、位运算符(&,|,^,~,<<,>>)和复合赋值运算符(+=,-=,*=,/=,%=,&=,|=,^=,&&=,||=,<<=,>>=)。bc内置了很多有用的函数,像是平方根、正弦、余弦、反正弦、自然对数、指数等。
|
||||
如果你对C语言很熟悉的话,你会发现bc使用了和C语言一样或相似的算术操作符。所支持的操作符包括算术运算符(+, -, *, /, %, ++, --)、比较运算符(<, >, ==, !=, <=, >=)、逻辑运算符(!, &&, ||)、位运算符(&, |, ^, ~, <<, >>)和复合赋值运算符(+=, -=, *=, /=, %=, &=, |=, ^=, &&=, ||=, <<=, >>=)。bc内置了很多有用的函数,像是平方根、正弦、余弦、反正弦、自然对数、指数等。
|
||||
|
||||
### 如何使用GNU bc ###
|
||||
|
||||
作为一个基于命令行的计算器,GNU bc的使用是没有限制的。在本文中,我会向大家介绍bc命令的几个常用的特性。如果你想要更加详细的指导,你可以查阅[官方指南][2]。
|
||||
作为一个基于命令行的计算器,GNU bc的使用没有限制。在本文中,我会向大家介绍bc命令的几个常用的特性。如果你想要更加详细的指导,你可以查阅[官方指南][2]。
|
||||
|
||||
如果你没有一个预先写好的bc脚本,那么你需要在交互模式下运行bc。在这种模式下,你输入的以回车结束的任何声明或者表达式会被立刻计算出结果。你需要输入以下命令来进入bc的交互界面。如果向退出bc,你可以输入'quit'并且按回车。
|
||||
如果你没有一个预先写好的bc脚本,那么你可以在交互模式下运行bc。在这种模式下,你输入的以回车结束的任何声明或者表达式会被立刻计算出结果。你需要输入以下命令来进入bc的交互界面。如果想退出bc,你可以输入'quit'并且按回车。
|
||||
|
||||
$ bc
|
||||
|
||||
![](https://farm4.staticflickr.com/3939/15403325480_d0db97d427_z.jpg)
|
||||
|
||||
本文下面展示的例子应该在bc交互界面中输入。
|
||||
本文下面展示的例子请在bc交互界面中输入。
|
||||
|
||||
### 输入表达式 ###
|
||||
|
||||
@ -28,15 +28,15 @@
|
||||
|
||||
![](https://farm6.staticflickr.com/5604/15403325460_b004b3f8da_o.png)
|
||||
|
||||
在一个bc的交互界面中,存在没有个数限制的命令历史记录。使用上方向键来查看之前输入的命令。如果你想限制历史记录保存的命令数量,你可以将一个名为history的特殊变量设置成你希望的数值。该变量默认为-1,也就是“历史记录数量没有限制”。
|
||||
在一个bc的交互界面中,保存着没有个数限制的命令历史记录。使用上方向键来查看之前输入的命令。如果你想限制历史记录保存的命令数量,你可以将一个名为history的特殊变量设置成你希望的数值。该变量默认为-1,也就是“历史记录数量没有限制”。
|
||||
|
||||
### 输入输出进制切换 ###
|
||||
|
||||
经常会发生的是,你输入一个表达式并且想使用二进制或者十六进制来显示结果。bc允许你在输入输出数字的进制间转换。输入和输出的数系基分别存储在ibase和obase变量中,默认值为10,有效的数值是2到16(或者环境变量BC_BASE_MAX的值).你只需要更改ibase和obase的值就可以在不同进制之间转换了。下面是一个求两个十六进制/二进制数和的例子:
|
||||
经常会发生的是,你输入一个表达式并且想使用二进制或者十六进制来显示结果。bc允许你在输入输出数字的进制间转换。输入和输出的数系基分别存储在ibase和obase变量中,默认值为10,有效的数值是2到16(或者环境变量BC_BASE_MAX的值)。你只需要更改ibase和obase的值就可以在不同进制之间转换了。下面是一个求两个十六进制/二进制数和的例子:
|
||||
|
||||
![](https://farm6.staticflickr.com/5604/15402320019_f01325f199_z.jpg)
|
||||
|
||||
需要注意的是,我有意地将obase=16放到了ibase=16前面,反过来则是不可以的。这个是因为如果我先输入ibase=16,那么随后输入的obase=16中的16会被认为是16进制的数字,也就是十进制的22。当然这个不是我们所期望的。
|
||||
需要注意的是,我有意地将obase=16放到了ibase=16前面,**反过来则是不可以的**。这个是因为如果我先输入ibase=16,那么随后输入的obase=16中的16会被认为是16进制的数字,也就是十进制的22。当然这个不是我们所期望的。
|
||||
|
||||
### 调整精度 ###
|
||||
|
||||
@ -76,7 +76,7 @@ X的指数对数:
|
||||
|
||||
e(X)
|
||||
|
||||
### Other goodies as a language ###
|
||||
### 当做语言来用 ###
|
||||
|
||||
作为一个计算语言,GNU bc支持简单的声明(变量赋值、中断、返回等)、复合语句(if、while、for loop等)和自定义函数。在这里我不会涉及到这些特性的细节,不过你可以通过[官方指南][2]来学习如何使用这些特性。下面是一个简单的函数示例:
|
||||
|
||||
@ -98,7 +98,7 @@ X的指数对数:
|
||||
|
||||
![](https://farm4.staticflickr.com/3943/15565252976_f50f453c7f_z.jpg)
|
||||
|
||||
总结以下,GNU bc是一款强大并且通用的基于命令行的计算器应用,因此它绝对不会让你失望。它预装在所有的现代Linux发行版中,bc可以让你不用离开命令行就可以进行高效的数学计算。所以,GNU bc一定会是你的最爱。
|
||||
总结一下,GNU bc是一款强大并且通用的基于命令行的计算器应用,它绝对不会让你失望。它预装在所有的现代Linux发行版中,bc可以让你不用离开命令行就可以进行高效的数学计算。所以,GNU bc一定会是你的最爱。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -106,7 +106,7 @@ via: http://xmodulo.com/command-line-calculator-linux.html
|
||||
|
||||
作者:[Dan Nanni][a]
|
||||
译者:[JonathanKang](https://github.com/JonathanKang)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,4 +1,4 @@
|
||||
磁盘写满或磁盘不可写?解决Linux和UNIX系统这些硬盘问题的8个小贴士
|
||||
解决八种Linux硬盘问题的技巧
|
||||
================================================================================
|
||||
不能在Linux或者类UNIX系统的硬盘上写入数据?想解决服务器上磁盘损坏的问题吗?想知道你为什么总是在屏幕上看到“磁盘已满”的字眼吗?想学习处理这些问题的办法吗?试试一下这8个解决Linux及UNIX服务器硬盘问题的小贴士吧。
|
||||
|
||||
@ -95,6 +95,8 @@
|
||||
|
||||
# mount -o remount,rw /ftpusers/tmp
|
||||
|
||||
(LCTT 译注:如果硬盘由于硬件故障而 fallback 到只读模式,建议不要强制变回读写模式,而是赶快替换硬盘)
|
||||
|
||||
另外,我是这样[用rw模式重新挂载FreeBSD 9.x服务器的根目录][7]的:
|
||||
|
||||
# mount -o rw /dev/ad0s1a /
|
||||
@ -111,11 +113,13 @@
|
||||
Filesystem Inodes IUsed IFree IUse% Mounted on
|
||||
/dev/sda8 6250496 11568 6238928 1% /ftpusers
|
||||
|
||||
所以 /ftpusers 下有总计62,50,496KB大小的索引节点但是只有11,568KB被使用。你可以在 /ftpusers 位置下另外创建62,38,928KB大小的文件。如果你的索引节点100%被使用了,试试看以下的选项:
|
||||
如上 /ftpusers 下有总计62,50,496KB大小的索引节点但是只有11,568KB被使用。你可以在 /ftpusers 位置下另外创建62,38,928KB大小的文件。如果你的索引节点100%被使用了,试试看以下的选项:
|
||||
|
||||
- 找出不想要的文件并删除它,或者把它移动到其它服务器上。
|
||||
- 找出不想要的大文件并删除它,或者把它移动到其它服务器上。
|
||||
|
||||
(LCTT 译注:如果一个分区存储了太多的小文件,会出现 inode 用完而存储扇区还有空闲的情况,这种情况下要么清除小文件或在不需要独立访问的情况下将它们打包成一个大文件;要么将数据保存好之后重新分区,并设置分区的 -t news 属性,增加 inode 分配)
|
||||
|
||||
### #4 - 我的硬盘驱动器宕了吗? ###
|
||||
|
||||
[日志文件中的输入/输出错误(例如 /var/log/messages)][9]说明硬盘出了一些问题并且可能已经失效,你可以用smartctl命令来查看硬盘的错误,这是一个在类UNIX系统下控制和监控硬盘状态的一个命令。语法如下:
|
||||
@ -130,15 +134,16 @@
|
||||
|
||||
图 01: Gnome磁盘工具(Applications > System Tools > Disk Utility)
|
||||
|
||||
> **注意**: 不要对SMART工具期望太高,它在某些状况下无法工作,我们要定期做备份。
|
||||
> **注意**: 不要对S.M.A.R.T.工具期望太高,它在某些状况下无法工作,我们要定期做备份。
|
||||
|
||||
### #5 - 我的硬盘驱动器和服务器是不是太热了? ###
|
||||
|
||||
高温会引起服务器低效,所以你需要把服务器和磁盘维持在一个平稳适当的温度,高温甚至能导致服务器宕机或损坏文件系统和磁盘。[用hddtemp或smartctl功能,通过从支持此特点的驱动上的SMART技术来读取数据的方式,从而查出你的Linux或基于UNIX系统上的硬件温度。][11]只有现代硬驱动器有温度传感器。hddtemp功能也支持从SCSI驱动器读取SMART信息。hddtemp能作为一个简单的命令行工具或守护程序来从所有服务器中获取信息:
|
||||
高温会引起服务器低效,所以你需要把服务器和磁盘维持在一个平稳适当的温度,高温甚至能导致服务器宕机或损坏文件系统和磁盘。[用hddtemp或smartctl功能,通过从支持S.M.A.R.T.功能的硬盘上读取数据的方式,从而查出你的Linux或基于UNIX系统上的硬盘温度][11]。只有现代硬驱动器有温度传感器。hddtemp功能也支持从SCSI驱动器读取S.M.A.R.T.信息。hddtemp能作为一个简单的命令行工具或守护程序来从所有服务器中获取信息:
|
||||
|
||||
hddtemp /dev/DISK
|
||||
hddtemp /dev/sg0
|
||||
|
||||
部分输出内容:
|
||||
部分输出内容如下:
|
||||
|
||||
[![](http://s0.cyberciti.org/uploads/cms/2014/10/hddtemp-on-rhel-300x85.jpg)][12]
|
||||
|
||||
@ -150,7 +155,7 @@
|
||||
|
||||
#### 我怎么获取CPU的温度 ####
|
||||
|
||||
你可以使用Linux硬件监控工具例如像[用基于Linux系统的lm_sensor功能来获取CPU温度][13]:
|
||||
你可以使用Linux硬件监控工具,例如像[用基于Linux系统的lm_sensor功能来获取CPU温度][13]:
|
||||
|
||||
sensors
|
||||
|
||||
@ -162,7 +167,7 @@ Debian服务器的部分输出内容:
|
||||
|
||||
### #6 - 处理损坏的文件系统 ###
|
||||
|
||||
服务器上的文件系统可能会因为硬件重启或一些其它的错误比如坏区而损坏。你可以[用fsck命令来修复损坏的文件系统][15]:
|
||||
服务器上的文件系统可能会因为硬件重启或一些其它的错误比如坏的扇区而损坏。你可以[用fsck命令来修复损坏的文件系统][15]:
|
||||
|
||||
umount /ftpusers
|
||||
fsck -y /dev/sda8
|
||||
@ -251,7 +256,7 @@ via: http://www.cyberciti.biz/datacenter/linux-unix-bsd-osx-cannot-write-to-hard
|
||||
|
||||
作者:[nixCraft][a]
|
||||
译者:[ZTinoZ](https://github.com/ZTinoZ)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,14 +1,14 @@
|
||||
Linux服务器监控和排障利器:sysdig
|
||||
系统之锹sysdig:Linux服务器监控和排障利器
|
||||
================================================================================
|
||||
当你需要追踪某个进程产生和接收的系统调用时,首先浮现在你脑海中的是什么?你可能会想到strace,那么你是对的。你会使用什么样的命令行工具来监控原始网络通信呢?如果你想到了tcpdump,你又作出了一个极佳的选择。而如果你碰到必须追踪打开的文件(在Unix意义上:一切皆文件)的需求,可能你会使用lsof。
|
||||
|
||||
strace、tcpdump以及lsof,确实是些伟大的工具,它们应该成为每个系统管理员工具集中的一部分,而这也正是你为什么会爱上[sysdig][1]的原因。它是一个强大的开源工具,用于系统级别的勘察和排障,它的创建者在介绍它时称之为“strace+tcpdump+lsof+上面点缀着lua樱桃的绝妙酱汁”。抛开幽默不说,sysdig的最棒特性之一在于,它不仅能分析Linux系统的“存活”状态,也能将该状态保存为转储文件以供离线检查。更重要的是,你可以自定义sysdig的行为,或者甚至通过内建的(你也可以自己编写)名为凿子的小脚本增强其功能。单独的凿子可以脚本指定的各种风格分析sysdig捕获的事件流。
|
||||
strace、tcpdump以及lsof,确实是些伟大的工具,它们应该成为每个系统管理员工具集之中的一部分,而这也正是你为什么应该爱上[sysdig][1]的原因。它是一个强大的开源工具,用于系统级别的勘察和排障,它的创建者在介绍它时称之为“strace+tcpdump+lsof+上面点缀着lua樱桃的绝妙酱汁”。抛开幽默不说,sysdig的最棒特性之一在于,它不仅能分析Linux系统的“现场”状态,也能将该状态保存为转储文件以供离线检查。更重要的是,你可以自定义sysdig的行为,或者甚至通过内建的(你也可以自己编写)名为凿子(chisel)的小脚本增强其功能。单独的凿子可以以脚本指定的各种风格分析sysdig捕获的事件流。
|
||||
|
||||
在本教程中,我们将探索sysdig的安装及其基本用法,在Linux上实施系统监控和排障。
|
||||
|
||||
### 安装Sysdig ###
|
||||
|
||||
对于本教程,由于为了简便、缩短安装流程以及版本不可知,我们将选择使用官方网站提供的自动化安装过程。在自动化过程中,安装脚本会自动检测操作系统并安装必需的依赖包。
|
||||
对于本教程,由于为了简便、缩短安装流程以及版本的不可知,我们将选择使用官方网站提供的自动化安装过程。在自动化过程中,安装脚本会自动检测操作系统并安装必需的依赖包。
|
||||
|
||||
以root身份运行以下命令来从官方apt/yum仓库安装sysdig:
|
||||
|
||||
@ -20,7 +20,7 @@ strace、tcpdump以及lsof,确实是些伟大的工具,它们应该成为每
|
||||
|
||||
# sysdig
|
||||
|
||||
我们的屏幕将马上被系统上发生的所有事件填满,对于这些信息,我们不能做更多操作。要进一步处理,我们可以运行:
|
||||
我们的屏幕将马上被系统上发生的所有事件填满,对于这些信息,不便于我们做更多操作。要进一步处理,我们可以运行:
|
||||
|
||||
# sysdig -cl | less
|
||||
|
||||
@ -28,7 +28,6 @@ strace、tcpdump以及lsof,确实是些伟大的工具,它们应该成为每
|
||||
|
||||
![](https://farm4.staticflickr.com/3938/15334678610_e5956a26e8_z.jpg)
|
||||
|
||||
The following categories are available by default, each of which is populated by multiple built-in chisels.
|
||||
默认有以下类目可用,各个类目中分布有多个内建的凿子。
|
||||
|
||||
- CPU Usage:CPU使用量
|
||||
@ -43,7 +42,7 @@ The following categories are available by default, each of which is populated by
|
||||
|
||||
要显示指定凿子上的信息(包括详细的命令行用法),运行以下命令:
|
||||
|
||||
# sysdig -cl [chisel_name]
|
||||
# sysdig -cl [凿子名称]
|
||||
|
||||
例如,我们可以检查“网络”类目下关于spy_port凿子的信息:
|
||||
|
||||
@ -51,14 +50,14 @@ The following categories are available by default, each of which is populated by
|
||||
|
||||
![](https://farm4.staticflickr.com/3945/15521424095_0365bf20c3_z.jpg)
|
||||
|
||||
凿子可以通过过滤器(可同时应用于存活数据和记录文件)组合,以获取更多有用的输出。
|
||||
凿子可以通过过滤器(可同时应用于实时数据和记录文件)组合,以获取更多有用的输出。
|
||||
|
||||
过滤器遵从“类.字段”结构。例如:
|
||||
|
||||
- **fd.cip**:客户端IP地址。
|
||||
- **evt.dir**:事件方向,可以是‘>’用于进入事件,或‘<’用于退出事件。
|
||||
|
||||
完成得过滤器列表可以通过以下命令显示:
|
||||
完整的过滤器列表可以通过以下命令显示:
|
||||
|
||||
# sysdig -l
|
||||
|
||||
@ -68,7 +67,7 @@ The following categories are available by default, each of which is populated by
|
||||
|
||||
假定你的服务器发生了性能问题(如,没有回应,或者重大的回应延迟)。你可以使用瓶颈凿子来显示当前10个最慢系统调用的列表。
|
||||
|
||||
使用以下命令在存活服务器上进行实时检查。“-c”标识,后跟凿子名告诉sysdig运行指定的凿子。
|
||||
使用以下命令在存活服务器上进行实时检查。“-c”标识,后跟凿子名称告诉sysdig运行指定的凿子。
|
||||
|
||||
# sysdig -c bottlenecks
|
||||
|
||||
@ -84,7 +83,7 @@ The following categories are available by default, each of which is populated by
|
||||
|
||||
![](https://farm6.staticflickr.com/5611/15334678670_ebbe93265e_z.jpg)
|
||||
|
||||
你想要关注栏#2,#3和#4,这些分别表示执行时间、进程名和PID。
|
||||
你需要关注栏#2,#3和#4,这些分别表示执行时间、进程名和PID。
|
||||
|
||||
### Sysdig实例: 监控交互用户活动 ###
|
||||
|
||||
@ -130,7 +129,7 @@ The following categories are available by default, each of which is populated by
|
||||
|
||||
# sysdig -s 4096 -A -c echo_fds fd.cip=192.168.0.100 -r /mnt/sysdig/debian.scap.gz proc.name=apache2
|
||||
|
||||
如果你想要监控原生数据传输(二进制格式),请用“-A”替换“-X”:
|
||||
如果你想要监控原生数据传输(二进制格式),请把“-A”替换为“-X”:
|
||||
|
||||
# sysdig -s 4096 -X -c echo_fds fd.cip=192.168.0.100 -r /mnt/sysdig/debian.scap.gz proc.name=apache2
|
||||
|
||||
@ -142,7 +141,7 @@ via: http://xmodulo.com/monitor-troubleshoot-linux-server-sysdig.html
|
||||
|
||||
作者:[Gabriel Cánepa][a]
|
||||
译者:[GOLinux](https://github.com/GOLinux)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,9 +1,8 @@
|
||||
Linux FAQs with Answers--How to convert a text file to PDF format on Linux
|
||||
Linux 有问必答 --如何在Linux上将文本文件转换成PDF格式
|
||||
Linux 有问必答:在Linux上如何将文本文件转换成PDF格式
|
||||
================================================================================
|
||||
> **提问**: 我想要将一个纯文本文件转换成PDF文档。是否有一个简单的方法在Linux命令行下将文本文件转换成PDF文件?
|
||||
> **提问**: 我想要将一个纯文本文件转换成PDF文档。在Linux命令行下是否有一个简单的方法将文本文件转换成PDF文件?
|
||||
|
||||
当你有一打文本文件要维护的时候,把它们转换成PDF文档有一些好处。比如,PDF对打印更友好因为PDF文档有预定义布局。除此之外,还可以减少文档被意外修改的风险。
|
||||
当你有一大堆文本文件要维护的时候,把它们转换成PDF文档会好一些。比如,PDF更适合打印,因为PDF文档有预定义布局。除此之外,还可以减少文档被意外修改的风险。
|
||||
|
||||
要将文本文件转换成PDF格式,你要按照下面的两步。
|
||||
|
||||
@ -27,7 +26,7 @@ Linux 有问必答 --如何在Linux上将文本文件转换成PDF格式
|
||||
|
||||
准备工作完成之后,按照下面的两步从文本文件生成一个PDF文件
|
||||
|
||||
首先,将文本文件使用enscript命令行工具转换成postscript格式。
|
||||
首先,使用enscript命令行工具将文本文件转换成postscript格式。
|
||||
|
||||
$ enscript -p output.ps input.txt
|
||||
|
||||
@ -40,6 +39,6 @@ Linux 有问必答 --如何在Linux上将文本文件转换成PDF格式
|
||||
via: http://ask.xmodulo.com/convert-text-to-pdf-linux.html
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,14 +1,14 @@
|
||||
如何让树莓派默认以图形界面启动
|
||||
如何让树莓派默认启动进入图形界面
|
||||
================================================================================
|
||||
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/11/raspberry_pi_gui.jpg)
|
||||
|
||||
我买树莓派已经有一段时间了,但是实话说我几乎还没有用它做过什么事情。自从我的Dell超级本送到Dell服务中心后(已经有数星期了),我再次开始使用树莓派作为替代。
|
||||
|
||||
我之前已经写过一篇[如何在Ubuntu中在SD卡上安装Raspbian系统][1]。我也重装了一次树莓派。第一次启动的时候我漏掉了一件事情就是设置图形界面。这样当我再次启动树莓派的时候,我直接进入了命令行。我该接下来如何运行Respbian图形界面呢?
|
||||
我之前已经写过一篇[在Ubuntu中如何在SD卡上安装Raspbian系统][1]。我也重装了一次树莓派。第一次启动的时候我漏掉了一件事情就是设置图形界面。这样当我再次启动树莓派的时候,我直接进入了命令行。我该接下来如何运行Respbian图形界面呢?
|
||||
|
||||
### 设置Raspbian图形启动 ###
|
||||
|
||||
入Raspbian系统的命令行界面,不用失望,因为很容易设置树莓派以图形界面启动。让我们看看该如何做。
|
||||
当你第一次安装Raspbian系统时,确实有一些选项需要你来配置,由于匆忙,我没有注意到这些,只是快速完成屏幕上的选项。如果你遇到了和我一样的情况,最终只是进入到了Raspbian操作系统的命令行界面,不要失望,因为设置树莓派以图形界面启动很容易。让我们看看该如何操作。
|
||||
|
||||
### 第一步: ###
|
||||
|
||||
@ -24,14 +24,13 @@
|
||||
|
||||
#### 第三步: ####
|
||||
|
||||
在这个配置界面下, 寻找**Enable Boot to Desktop/Scratch**这个选项。用箭头、tab和/或者回车键的组合来选中它(我忘记该使用哪一个了)。
|
||||
在这个配置界面下, 寻找**Enable Boot to Desktop/Scratch**这个选项。用箭头、tab和/或者回车键的组合来选中它(我忘记使用的是哪些了)。
|
||||
|
||||
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/11/Raspbian_Gui_setup.jpg)
|
||||
|
||||
#### 第四步: ####
|
||||
|
||||
下一屏中,选择**Desktop Login as user ‘Pi’ at the graphical desktop.
|
||||
**
|
||||
下一屏中,选择** Desktop Login as user ‘Pi’ at the graphical desktop. **
|
||||
|
||||
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/11/Raspbian_Gui_setup_1.jpg)
|
||||
|
||||
@ -45,7 +44,7 @@
|
||||
|
||||
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/11/raspbian-welcome-screen-gui.jpeg)
|
||||
|
||||
我希望这边教程能够帮助你设置你的树莓派默认以图形界面启动。欢迎在评论区留下你的问题和建议。
|
||||
我希望这个教程能够帮助设置你的树莓派默认启动进入图形界面。欢迎在评论区留下你的问题和建议。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -53,9 +52,9 @@ via: http://itsfoss.com/raspberry-pi-gui-boot/
|
||||
|
||||
作者:[Abhishek][a]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://itsfoss.com/author/Abhishek/
|
||||
[1]:http://itsfoss.com/tutorial-how-to-install-raspberry-pi-os-raspbian-wheezy/
|
||||
[1]:http://itsfoss.com/tutorial-how-to-install-raspberry-pi-os-raspbian-wheezy/
|
@ -1,18 +1,19 @@
|
||||
Qshutdown – 一个先进的关机神器
|
||||
================================================================================
|
||||
qshutdown是一个QT程序,用于让计算机在指定时间或者在几分钟后关机/重启/挂起/睡眠。它会一直显示时间,直到相应的请求被发送到Gnome或KDE会话管理器,或者发送到HAL或DeviceKit。而如果这一切都没有发生,将会使用‘sudo shutdown -P now’进行关机。对于那些只在特定时间使用计算机工作的人而言,可能很有用。
|
||||
qshutdown是一个QT程序,用于让计算机在指定时间或者在几分钟后关机/重启/挂起/睡眠。对于那些只在特定时间使用计算机工作的人而言,可能很有用。
|
||||
|
||||
qshutdown将在最后70秒时显示3次警告提醒。(如果设置了1分钟或者本地时间+1,它只会显示一次。)
|
||||
![](http://www.ubuntugeek.com/wp-content/uploads/2014/11/12.png)
|
||||
|
||||
该程序使用qdbus来发送关机/重启/挂起/睡眠请求到gnome或kde会话管理器,或者到HAL或DeviceKit,而如果这些都没有工作,那么就会使用‘sudo shutdown’命令进行关机(注意,但发送请求到HAL或DeviceKit,或者使用shutdown命令时,会话不会被保存。如果使用shutdown命令,该程序只会被关机或重启)。所以,如果在shutdown或reboot时间到时什么都没发生,这就意味着用户缺少使用shutdown命令的权限。
|
||||
qshutdown将在最后70秒时显示3次警告提醒。(如果设置了1分钟或者“本地时间+1”,它只会显示一次。)
|
||||
|
||||
该程序使用qdbus来发送关机/重启/挂起/睡眠请求到gnome或kde会话管理器,或者到HAL或DeviceKit,而如果这些都没有工作,那么就会使用‘sudo shutdown -P now’命令进行关机(注意,当发送请求到HAL或DeviceKit,或者使用shutdown命令时,会话不会被保存。如果使用shutdown命令,该程序只会被关机或重启)。所以,如果在shutdown或reboot时间到时却什么都没发生,这就意味着用户缺少使用shutdown命令的权限。
|
||||
|
||||
在这种情况下,你可以进行以下操作:
|
||||
|
||||
粘贴以下信息到终端:“EDITOR:nano sudo -E visudo”并添加此行:“* ALL = NOPASSWD:/sbin/shutdown”这里*替换username或%groupname。
|
||||
粘贴以下信息到终端:“EDITOR:nano sudo -E visudo”并添加此行:“* ALL = NOPASSWD:/sbin/shutdown”这里*替换为你的“用户名”或“%组名”。
|
||||
|
||||
配置文件qshutdown.conf
|
||||
|
||||
倒计时最大计数为1440分钟(24小时)。配置文件(和日志文件)位于~/.qshutdown。
|
||||
倒计时最大计数为1440分钟(24小时)。配置文件(和日志文件)位于~/.qshutdown,配置文件为:qshutdown.conf。
|
||||
|
||||
对于管理员:
|
||||
|
||||
@ -26,7 +27,6 @@ qshutdown将在最后70秒时显示3次警告提醒。(如果设置了1分钟
|
||||
|
||||
### 屏幕截图 ###
|
||||
|
||||
![](http://www.ubuntugeek.com/wp-content/uploads/2014/11/12.png)
|
||||
|
||||
![](http://www.ubuntugeek.com/wp-content/uploads/2014/11/23.png)
|
||||
|
||||
@ -40,7 +40,7 @@ via: http://www.ubuntugeek.com/qshutdown-an-avanced-shutdown-tool.html
|
||||
|
||||
作者:[ruchi][a]
|
||||
译者:[GOLinux](https://github.com/GOLinux)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
106
published/20141119 When Microsoft Went A-Courting.md
Normal file
106
published/20141119 When Microsoft Went A-Courting.md
Normal file
@ -0,0 +1,106 @@
|
||||
当微软离去时
|
||||
================================================================================
|
||||
![](http://www.linuxinsider.com/ai/769827/microsoft-linux-open-source.jpg)
|
||||
|
||||
**开源.Net,“这与Linux无关——它与SaaS相关,也和一位并不偏执和狂热的90后CEO相关,”SoylentNews博主hairyfeet道,“纳德拉很明智,而且意识到了编程语言的价值不在于专利或OS排他性,而在于服务和对语言的支持……越多的平台使用该语言,它就会越好。”**
|
||||
|
||||
如果自由和开源软件迷们在过去的那些日子里感到有些许困惑的话,这也许是可以理解的,即便是头昏、头痛以及头晕也算是常见的。
|
||||
|
||||
你或许会问,这又是什么新的病症?
|
||||
|
||||
好吧,Linux女孩很高兴告诉你,它不是什么病症。不过,然而它并不意味着它很容易治愈。
|
||||
|
||||
原因无他,而是微软开源.Net并让它可以在Linux或Mac OS上运行的消息。
|
||||
|
||||
是的,你没听错:史蒂夫·鲍尔默曾经可能[称Linux为“癌症”][1],但今天雷蒙德(微软总部,代称微软)有个新发现,曾经不被包容的,但是却转头[“爱”上了Linux][2]!
|
||||
|
||||
它让微软看起来很奇怪——它也驱使FOSS迷们聚拢到博客圈的破败的Broken Windows Lounge,而去的人的数量更是空前的。
|
||||
|
||||
一杯龙舌兰可以让你不再头疼么?这是现在众多探究的问题之一。
|
||||
|
||||
### ‘繁荣的机遇’ ###
|
||||
|
||||
“这是个重大的消息,虽然有点过时了,”克里斯·特拉弗斯,一位[博主][3],他为[LedgerSMB][4]项目工作,告诉Linux女孩。
|
||||
|
||||
![](http://www.linuxinsider.com/images/article_images/linuxgirl_bg_pinkswirl_150x245.jpg)
|
||||
|
||||
“我们生活的世界中,即使没有大的商业公司支持,新的开源编程语言也很兴旺,而闭源的编程语言仅能在大的商业公司的帮助下得到支持,”特拉弗斯说,“例如,Bing闭源杀死了REBOL 2.x。”
|
||||
|
||||
“这项运动很明显酝酿已久——一家像微软这样庞大的公司不会有‘突然开源’这种复杂的东西——而我想,在某种程度上,微软一定看到了Sun开源OpenJDK时的一些前兆了。”他暗示道。
|
||||
|
||||
同时,“这也为诸如C#和F#这样的语言提供了比当前市场更为兴盛的机会,”特拉弗斯说。
|
||||
|
||||
### ‘我仍然不相信你’ ###
|
||||
|
||||
“我首先想说,‘谢谢你,微软!’”[Linux Rants][5]博主麦克·斯通开篇说,“我们真的很欣赏你开源.Net并推动它跨平台,这是迈向正确方向的一步!”
|
||||
|
||||
“然而,我仍然不相信你。”他补充道。
|
||||
|
||||
“我很喜欢微软在考虑开源,但是我没有见到它向GPL迈进,”斯通告诉Linux女孩,“这让我想到了这么个可能性,微软提供了多个平台的软件供你使用,但却会把开发者和它捆绑起来。”
|
||||
|
||||
此外,微软不会作出任何保证,保证.Net常年开源,他指出。
|
||||
|
||||
“这意味着微软可以退出,并让开发出来的应用程序成为跨平台的Windows专有软件,”他警告道,“我不会相信微软的承诺,我会翘首期盼微软他们的突然而必然的背叛。”
|
||||
|
||||
### ‘留心不怀好意的礼物’ ###
|
||||
|
||||
该运动明显带有失望的气息,Google+博主阿里桑德罗·埃伯索尔暗示道。
|
||||
|
||||
“他们来得太晚了,”埃伯索尔说,“Java已经先下手为强了,当.Net还是Windows/Microsoft专有产品时,Java已经遍布四处了。试着让人采用,希望好运吧。”
|
||||
|
||||
此外,“如果它打上GPL烙印来保护代码创建者的话我才会相信它,”他补充道,“一个脆弱的MIT许可证任何时候都是逆天而行的。”
|
||||
|
||||
无论如何,“在该公司产生的对FLOSS社区的全部的敌意下,他们会过河拆桥,”埃伯索尔总结道,“底线是:送礼的希腊人也很可畏——仔细留心希腊人不怀好意的礼物……”
|
||||
|
||||
### ‘就像猫爱上老鼠’ ###
|
||||
|
||||
微软爱上Linux“就像猫爱上老鼠,”博主[罗伯特·伯格森][6]打趣道,“当然,他们会玩玩*/Linux,但是他们不是我们的朋友。”
|
||||
|
||||
所发生的事情是,FOSS和LInux社区已经击溃了“MS自从和IBM达成提供OS的交易后放置在竞争道路入口上的所有障碍,”伯格森说,“MS肯定是在绝望地试着和‘敌人’‘做朋友’,因为它们的位置被侵占了。”
|
||||
|
||||
“一切都会好的,”他补充道,“MS仍然可以通过愚蠢地花大量的金钱来制造麻烦,或者他们可以进行常规商业运作并在价格/性能上开展竞争。那不是‘爱’——那是接受现实。”
|
||||
|
||||
### 适应或者灭亡 ###
|
||||
|
||||
对于微软而言,问题在于“开源开发包对于开发者而言开始变得足够好用了,”参团顾问和[Slashdot][7]博主格哈德·麦克。
|
||||
|
||||
“在我的最后一份职业中,大多数的程序员想要Eclipse,而不是Visual Studio,即使客户端软件是Windows专用的。用Windows做测试的开发者们迁移到Linux的数量在缓慢增长。”麦克回忆道。
|
||||
|
||||
“很要有人想被固定在一个平台中,因此单一平台的语言的份额会越来越少,”他补充道,“微软现在必须在适应与灭亡中作出选择。”
|
||||
|
||||
### 这里没有温暖的毛球 ###
|
||||
|
||||
驱动此项运动的策略也在于“各种云大量地在Linux上部署,即便在微软自己的Azure云,Linux也被大量部署,”Google+博主凯文·奥布莱恩暗示道。
|
||||
|
||||
“纳德拉清楚地指出,他正将微软向云方向推进,因为他几乎不得不如此,以期继续将游戏玩下去。”奥布莱恩坚信。
|
||||
|
||||
那就是说,不管怎样,“我都不期待微软变得可爱又善意——他们将做所有他们认为能获得最佳公司利益的事情。”他说。
|
||||
|
||||
事实上,“根本没Linux什么事——它只和SaaS相关,也和一位并不偏执和狂热的90后CEO相关,”SoylentNews博主hairyfeet告诉Linux女孩。
|
||||
|
||||
“纳德拉很明智,而且意识到了编程语言的价值不在于专利或OS排他性,而在于服务和对语言的支持,”hairyfeet解释道,“考虑到这一点,越多的平台使用该语言,它就会越好,因为那会增加该语言的价值,并且为你的服务带来更多客户。”
|
||||
|
||||
### 帝国的没落 ###
|
||||
|
||||
总得来说,一切都很明了,那就是“微软帝国正在摇摇欲坠,”Google+博主贡萨洛·维拉斯科 C说。
|
||||
|
||||
“我不知道,或者不关心他们为什么会说谎,说他们热爱Linux,”他补充道,“我只希望GNU/Linux社区变得比现今更聪明些(咳,Systemd,咳咳),拒绝微软.Net和其它产生影响的东西。GNU/Linux必须只用FLOSS工具。”
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxinsider.com/story/When-Microsoft-Went-A-Courting-81374.html
|
||||
|
||||
作者:[Katherine Noyes][a]
|
||||
译者:[GOLinux](https://github.com/GOLinux)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://twitter.com/noyesk
|
||||
[1]:http://www.linuxinsider.com/perl/story/35697.html
|
||||
[2]:http://www.theregister.co.uk/2014/10/20/microsoft_cloud_event/
|
||||
[3]:http://ledgersmbdev.blogspot.com/
|
||||
[4]:http://www.ledgersmb.org/
|
||||
[5]:http://linuxrants.com/
|
||||
[6]:http://mrpogson.com/
|
||||
[7]:http://slashdot.org/
|
@ -1,14 +1,14 @@
|
||||
15条Linux下的‘pwd’命令(打印工作目录)示例
|
||||
菜鸟教程:全面学习 pwd 命令
|
||||
================================================================================
|
||||
对于那些使用Linux命令行的人来说,‘**pwd**‘命令是非常有用的,它告诉你你现在在那个目录,从根目录(**/**)开始。特别对于或许会在目录的切换间容易糊涂的Linux新手而言,‘**pwd**‘ 可以拯救他们。
|
||||
对于那些使用Linux命令行的人来说,‘**pwd**‘命令是非常有用的,它告诉你你现在在那个目录,从根目录(**/**)如何到达。特别是对于或许会在目录的切换间容易糊涂的Linux新手而言,‘**pwd**‘ 可以拯救他们。
|
||||
|
||||
![15 pwd Command Examples](http://www.tecmint.com/wp-content/uploads/2014/11/pwd-command.png)
|
||||
|
||||
15 pwd 命令示例
|
||||
*15个 pwd 命令示例*
|
||||
|
||||
### 什么是pwd? ###
|
||||
|
||||
‘**pwd**‘ 代表的是‘**Print Working Directory**’(打印当前目录)。如它的名字那样,‘**pwd**’会打印出当前工作目录或仅是目录用户。它会打印出以root (**/**)为起始的完整目录名。这条命令是一条shell内建命令,并且在大多数shell中都可以使用,如bash、Bourne shell,ksh、zsh等等。
|
||||
‘**pwd**‘ 代表的是‘**Print Working Directory**’(打印当前目录)。如它的名字那样,‘**pwd**’会打印出当前工作目录,或简单的来说就是当前用户所位于的目录。它会打印出以根目录 (**/**)为起点的完整目录名(绝对目录)。这条命令是一条shell内建命令,并且在大多数shell中都可以使用,如bash、Bourne shell,ksh、zsh等等。
|
||||
|
||||
#### pwd的基本语法: ####
|
||||
|
||||
@ -25,11 +25,11 @@
|
||||
<td align="LEFT" style="border: 1px solid #000000;"><b><span style="font-size: small;"> 描述</span></b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td height="19" align="LEFT" style="border: 1px solid #000000;"><span style="font-family: Liberation Serif,Times New Roman; font-size: small;"> -L (logical)</span></td>
|
||||
<td height="19" align="LEFT" style="border: 1px solid #000000;"><span style="font-family: Liberation Serif,Times New Roman; font-size: small;"> -L (即逻辑路径logical )</span></td>
|
||||
<td align="LEFT" style="border: 1px solid #000000;"><span style="font-family: Liberation Serif,Times New Roman; font-size: small;"> 使用环境中的路径,即使包含了符号链接</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td height="19" align="LEFT" style="border: 1px solid #000000;"><span style="font-family: Liberation Serif,Times New Roman; font-size: small;"> -P (physical)</span></td>
|
||||
<td height="19" align="LEFT" style="border: 1px solid #000000;"><span style="font-family: Liberation Serif,Times New Roman; font-size: small;"> -P (即物理路径physical)</span></td>
|
||||
<td align="LEFT" style="border: 1px solid #000000;"><span style="font-family: Liberation Serif,Times New Roman; font-size: small;"> 避免所有的符号链接</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -56,7 +56,7 @@ pwd的退出状态:
|
||||
<td align="CENTER" style="border: 1px solid #000000;"><span style="font-size: small;">成功</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td height="19" align="CENTER" style="border: 1px solid #000000;"><span style="font-size: small;">Non-zero</span></td>
|
||||
<td height="19" align="CENTER" style="border: 1px solid #000000;"><span style="font-size: small;">非零值</span></td>
|
||||
<td align="CENTER" style="border: 1px solid #000000;"><span style="font-size: small;">失败</span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@ -64,7 +64,7 @@ pwd的退出状态:
|
||||
|
||||
本篇的目的是采用例子让你对‘**pwd**‘有更深入的领悟。
|
||||
|
||||
**1.** 打印放钱工作目录.
|
||||
**1.** 打印当前工作目录.
|
||||
|
||||
avi@tecmint:~$ /bin/pwd
|
||||
|
||||
@ -72,7 +72,7 @@ pwd的退出状态:
|
||||
|
||||
![Print Working Directory](http://www.tecmint.com/wp-content/uploads/2014/11/pwd.gif)
|
||||
|
||||
打印工作目录
|
||||
*打印工作目录*
|
||||
|
||||
**2.** 为文件夹创建一个符号链接(比如说在home目录下创建一个**htm**链接指向**/var/www/html**)。进入新创建的目录并打印出含有以及不含符号链接的目录。
|
||||
|
||||
@ -83,9 +83,9 @@ pwd的退出状态:
|
||||
|
||||
![Create Symbolic Link](http://www.tecmint.com/wp-content/uploads/2014/11/Create-Symbolic-Link.gif)
|
||||
|
||||
创建符号链接
|
||||
*创建符号链接*
|
||||
|
||||
**3.** 从当前环境中答应目录即使它含有符号链接。
|
||||
**3.** 从当前环境中打印目录即使它含有符号链接。
|
||||
|
||||
avi@tecmint:~$ /bin/pwd -L
|
||||
|
||||
@ -93,7 +93,7 @@ pwd的退出状态:
|
||||
|
||||
![Print Current Working Directory](http://www.tecmint.com/wp-content/uploads/2014/11/Print-Working-Directory.gif)
|
||||
|
||||
打印工作目录
|
||||
*打印工作目录*
|
||||
|
||||
**4.** 解析符号链接并打印出物理目录。
|
||||
|
||||
@ -103,7 +103,7 @@ pwd的退出状态:
|
||||
|
||||
![Print Physical Working Directory](http://www.tecmint.com/wp-content/uploads/2014/11/Print-Physical-Working-Directory.gif)
|
||||
|
||||
打印物理工作目录
|
||||
*打印物理工作目录*
|
||||
|
||||
**5.** 查看一下“**pwd**”和“**pwd -P**”的输出是否一致,也就是说,如果没有跟上选项,“**pwd**”时候会自动采用**-P**选项。
|
||||
|
||||
@ -113,7 +113,7 @@ pwd的退出状态:
|
||||
|
||||
![Check pwd Output](http://www.tecmint.com/wp-content/uploads/2014/11/Check-pwd-Output.gif)
|
||||
|
||||
检查pwd输出
|
||||
*检查pwd输出*
|
||||
|
||||
**结论:** 上面例子4和5的输出很明显(结果相同),当你“**pwd**”后面不带参数时,pwd会使用“**-P**”选项。
|
||||
|
||||
@ -131,7 +131,7 @@ pwd的退出状态:
|
||||
|
||||
![Check pwd Version](http://www.tecmint.com/wp-content/uploads/2014/11/Check-pwd-Version.gif)
|
||||
|
||||
检查pwd命令版本
|
||||
*检查pwd命令版本*
|
||||
|
||||
**注意:** ‘pwd’ 通常不带选项运行,且没有任何参数
|
||||
|
||||
@ -148,9 +148,9 @@ pwd的退出状态:
|
||||
|
||||
![Print Executable Locations](http://www.tecmint.com/wp-content/uploads/2014/11/Print-Executable-Locations.gif)
|
||||
|
||||
打印可执行文件路径
|
||||
*打印可执行文件路径*
|
||||
|
||||
**8.** 存储“**pwd**”命令的值到变量中(比如说:**a** ),并从中打印i变量的值(对于观察shell脚本很重要)。
|
||||
**8.** 存储“**pwd**”命令的值到变量中(比如说:**a** ),并从中打印变量的值(对于观察shell脚本很重要)。
|
||||
|
||||
avi@tecmint:~$ a=$(pwd)
|
||||
avi@tecmint:~$ echo "Current working directory is : $a"
|
||||
@ -159,19 +159,19 @@ pwd的退出状态:
|
||||
|
||||
![Store Pwd Value in Variable](http://www.tecmint.com/wp-content/uploads/2014/11/Store-Pwd-Value-in-Variable.gif)
|
||||
|
||||
存储pwd的值到变量中。
|
||||
*存储pwd的值到变量中*
|
||||
|
||||
下面的例子中也可以用**printf**来替代。
|
||||
|
||||
**9.** 将工作路径切换到其他地方(比如说 **/home**),并在命令行中显示。通过执行命令(比如说 ‘**ls**‘)来验证一切**OK**。
|
||||
|
||||
avi@tecmint:~$ cd /home
|
||||
avi@tecmint:~$ PS1='$pwd> ' [Notice single quotes in the example]
|
||||
avi@tecmint:~$ PS1='$pwd> ' [注意例子中的单引号]
|
||||
> ls
|
||||
|
||||
![Change Current Working Directory](http://www.tecmint.com/wp-content/uploads/2014/11/Change-Current-Working-Directory.gif)
|
||||
|
||||
改变当前工作路径
|
||||
*改变当前工作路径*
|
||||
|
||||
**10.** 设置多行显示 (就像下面这样),
|
||||
|
||||
@ -190,7 +190,7 @@ pwd的退出状态:
|
||||
|
||||
![Set Multi Commandline Prompt](http://www.tecmint.com/wp-content/uploads/2014/11/Set-Multi-Commandline-Prompt.gif)
|
||||
|
||||
设置多行显示
|
||||
*设置多行显示*
|
||||
|
||||
**11.** 一下子检查当前工作路径以及先前的工作路径。
|
||||
|
||||
@ -200,8 +200,7 @@ pwd的退出状态:
|
||||
|
||||
![Check Present Previous Working Directory](http://www.tecmint.com/wp-content/uploads/2014/11/Check-Present-Previous-Working-Directory.gif)
|
||||
|
||||
Check Present Previous Working Directory
|
||||
检查当前工作路径
|
||||
*检查当前工作路径*
|
||||
|
||||
**12.** pwd文件的绝对路径(以**/**开始)。
|
||||
|
||||
@ -211,7 +210,7 @@ Check Present Previous Working Directory
|
||||
|
||||
/usr/include/pwd.h
|
||||
|
||||
**13.** 打印pwd手册的绝对路径(以**/**开始)。
|
||||
**13.** pwd手册的绝对路径(以**/**开始)。
|
||||
|
||||
/usr/share/man/man1/pwd.1.gz
|
||||
|
||||
@ -241,7 +240,7 @@ Check Present Previous Working Directory
|
||||
}
|
||||
fi
|
||||
|
||||
给予他执行权限并运行。
|
||||
给予执行权限并运行。
|
||||
|
||||
avi@tecmint:~$ chmod 755 pwd.sh
|
||||
avi@tecmint:~$ ./pwd.sh
|
||||
@ -251,7 +250,7 @@ Check Present Previous Working Directory
|
||||
|
||||
#### 总结 ####
|
||||
|
||||
**pwd**是一个最简单且会广泛用到的命令。掌握好pwd是使用Linux终端的基础。就是这些了。我很快会再带来另外有趣的注意,请不要走开继续关注Tecmint。
|
||||
**pwd**是一个最简单且会广泛用到的命令。掌握好pwd是使用Linux终端的基础。就是这些了。我很快会再带来另外有趣的文章,请不要走开继续关注我们。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -259,7 +258,7 @@ via: http://www.tecmint.com/pwd-command-examples/
|
||||
|
||||
作者:[Avishek Kumar][a]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,8 +1,8 @@
|
||||
Linux 有问必答 -- 如何从VirtualBox中从主机访问NAT客户机
|
||||
Linux 有问必答:如何从VirtualBox中从主机访问NAT客户机
|
||||
================================================================================
|
||||
> **提问**: 我有一台运行在VirtualBox上的使用NAT的虚拟机。因此虚拟机会被VirtualBox分配一个私有IP地址(10.x.x.x)。如果我想要从主机SSH到虚拟机中,我该怎么做?
|
||||
> **提问**: 我有一台运行在VirtualBox上的使用NAT的虚拟机,因此虚拟机会被VirtualBox分配一个私有IP地址(10.x.x.x)。如果我想要从主机SSH到虚拟机中,我该怎么做?
|
||||
|
||||
VirtualBox对虚拟机支持几种不同的网络方式,其中一种是NAT网络。当虚拟机启用NAT后,VirtualBox会自动在虚拟机和主机之间进行网络翻译,因此你不于必在虚拟机和主机之间配置任何东西。这也意味着NAT中的虚拟机对于外部网络以及主机本身是不可见的。这会在你想要从主机访问虚拟机时会产生问题(比如SSH)。
|
||||
VirtualBox对虚拟机支持几种不同的网络方式,其中一种是NAT网络。当虚拟机启用NAT后,VirtualBox会自动在虚拟机和主机之间进行网络翻译,因此你不必在虚拟机和主机之间配置任何东西。这也意味着NAT中的虚拟机对于外部网络以及主机本身是不可见的。这会在你想要从主机访问虚拟机时会产生问题(比如SSH)。
|
||||
|
||||
如果你想从VirtualBox的NAT环境的虚拟机,你可以在GUI或者命令行下启用VirtualBox NAT的端口转发。本篇教程将会演示**如何通过启用22端口转发而从主机SSH连接到NAT环境的客户机**。如果你先想要从HTTP访问NAT的客户机,用80端口代替22端口即可。
|
||||
|
||||
@ -62,6 +62,6 @@ VirtualBox有一个称为VBoxManage的命令行管理工具。使用命令行工
|
||||
via: http://ask.xmodulo.com/access-nat-guest-from-host-virtualbox.html
|
||||
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
@ -1,49 +1,48 @@
|
||||
什么造就一个优秀的程序员?
|
||||
|
||||
是什么造就了一个优秀的程序员?
|
||||
================================================================================
|
||||
是什么造成一个优秀的程序员?首先问问你自己吧,这会是个有趣的问题。它让你反思自己软件开发的能力。这个问题也适合问问你的同事。它可以带来一些关于如何协同工作的有趣讨论。下面是五个我认为成为一个优秀程序员必备的重要技能。
|
||||
是什么造就了一个优秀的程序员?首先问问你自己吧,这会是个有趣的问题。它让你反思自己的软件开发技术。这个问题也适合问问你的同事们。它可以带来一些关于如何协同工作的有趣讨论。下面是我认为成为一个优秀程序员必备的五个重要技能。
|
||||
|
||||
### 1. 分解问题 ###
|
||||
|
||||
编程是为了解决问题,但在你开始写代码前,需要明白如何解决问题。优秀程序员的一项技能是把大的问题逐层分解成一个个更小的部分,直到每一部分都可以很容易解决。但找到解决问题的方式往往并没有那么简单。优秀程序员能找到方法去建立问题模型,这种方法使得输出结果的程序容易解释、实现和测试。
|
||||
|
||||
我写过的某些最复杂的程序在局部上都是难懂的,因为代码实现并不能很好地描述问题,也就导致了编写的代码难以理解。当问题很好建模的时候,我赞同伯尼·科赛尔所说的话(取自著名的[程序员在工作][1]中的访谈记录):
|
||||
我写过的某些最复杂的程序在局部上都是难懂的,因为代码实现并不能很好地匹配这个问题,也就导致了编写的代码难以理解。当问题很好地建模的时候,我赞同伯尼·科赛尔所说的话(取自著名的[程序员在工作][1]中的访谈记录):
|
||||
|
||||
> “……很少有本质上很难的程序。如果你盯着某一块代码,它看起来确实很难;如果你无法理解某件事情应该产生什么结果,这基本上就暗示这件事情很难思考清楚了。在这个时候,你不应该卷起袖子,尝试修复代码;你需要只是往回一步,再仔细考虑清楚。当你已经深思熟虑后,你会发现问题变得很简单”。
|
||||
> “……很少有本质上很难的程序。如果你盯着某一块代码,它看起来确实很难;如果你无法理解这段代码应该产生什么结果,这基本上就是暗示它很难被理解了。在这个时候,你不应该卷起袖子,尝试修复代码;你需要只是往回一步,再仔细考虑清楚。当你已经深思熟虑后,你会发现问题变得很简单”。
|
||||
|
||||
### 2. 场景分析 ###
|
||||
|
||||
优秀开发者能考虑到如何使程序适合多种不同的场景。这项能力既适用于处理程序本身的逻辑,又适用于处理发生的外部和内部事件。为了考虑逻辑上的不同思路,他们问自己这样的问题:如果这个参数为空会发生什么?如果所有条件都为假呢?这个方法在线程上是安全的吗?为了发现软件需要处理的各种类型的事件,他们问自己这样的问题:如果队列占满了会怎样?如果请求收不到响应会怎样?如果在这台服务器重启的同时另外一台服务器也重启了会怎样?
|
||||
优秀开发者能考虑到如何使程序适合多种不同的场景。这项能力既适用于处理程序本身的逻辑,又适用于处理可能会发生的外部和内部事件。为了考虑逻辑上的不同思路,他们问自己这样的问题:如果这个参数为空会发生什么?如果所有条件都为假呢?这个方法在线程上是安全的吗?为了发现软件需要处理的各种类型的事件,他们问自己这样的问题:如果队列占满了会怎样?如果请求收不到响应会怎样?如果在这台服务器重启的同时另外一台服务器也重启了会怎样?
|
||||
|
||||
优秀程序员问他们自己:如何打破自己的程序?换句话说,他们有能力像测试人员一样思考。相反,缺少经验的程序员通常只考虑正确的路径——在一切都按照预期进行时正常的控制流(当然这也是程序在大部分时候做的事情)。当然,异常不可避免要发生,所以需要程序能处理这些情况。
|
||||
优秀程序员问他们自己:如何发现程序的缺陷?换句话说,他们有能力像测试人员一样思考。相反,缺少经验的程序员通常只考虑正确的路径——在一切都按照预期进行时正常的控制流(当然这也是程序在大部分时候的情况)。当然,异常不可避免要发生,所以需要程序能处理这些情况。
|
||||
|
||||
### 3. 命名 ###
|
||||
|
||||
编程由大量的命名对象组成:类、方法和变量。当编码完成时,程序也具备了自我描述的能力,也就是说通过阅读源代码可以清楚地明白程序中函数的含义。自描述代码的一个好处就是很自然地产生许多体积更小的方法,而不是少数体积大的方法,因为你有更多空间去放置有意义的名字(还有[其它原因][2]解释为什么短小方法更好)。
|
||||
编程由大量的命名对象组成:类、方法和变量。当编码完成得很好时,程序也具备了自我描述的能力,也就是说通过阅读源代码可以清楚地明白程序中函数的含义。自描述代码的一个好处就是很自然地产生许多更短的命名方法,而不是少数更长的方法,因为你有更多空间去放置有意义的名字(还有[其它原因][2]解释为什么短小方法更好)。
|
||||
|
||||
想出好的名字比它听起来更困难一些。我喜欢这段引用(来自菲尔·卡尔顿):“在计算机科学领域只有两件困难的事情:缓存失效和命名对象。”命名在一定程度上很困难是因为你需要清楚地明白每一个名字究竟要代表什么。有时候命名不是清楚,只有随着软件开发进展才会慢慢显现。因此,重命名和命名一样重要。
|
||||
想出好的名字比它听起来更困难一些。我喜欢这段引用(来自菲尔·卡尔顿):“在计算机科学领域只有两件困难的事情:缓存失效和命名对象。”命名在一定程度上很困难是因为你需要清楚地明白每一个名字究竟要代表什么。有时候命名不是一下子就清晰明了,只有随着软件开发进展才会慢慢显现。因此,重命名和命名一样重要。
|
||||
|
||||
命名对象也包含提出要用的概念和这些概念该如何称呼。通过深思熟虑,清楚命名所使用的惯用概念(在程序中和与程序员、非程序员讨论时使用),这使得编写程序变得更加容易。
|
||||
|
||||
### 4. 一致性 ###
|
||||
|
||||
也许编程中最大的挑战是管理复杂性。保持一致性是处理复杂性的一种方法。它通过允许我们看到对象命名、使用和处理所采用的模式和推理来降低了某些复杂性。有了一致性,我们就无需用脑袋去记住异常和随机变量。取而代之,我们可以更关注[程序本身的复杂性,而不是偶然产生的复杂性][3]。
|
||||
也许编程中最大的挑战是管理复杂性。保持一致性是处理复杂性的一种方法。它通过允许我们看到对象命名、使用和处理所采用的模式和推理来降低了某些复杂性。有了一致性,我们就无需用脑去记住异常和随机变量。取而代之,我们可以更关注[程序本身的复杂性,而不是偶然产生的复杂性][3]。
|
||||
|
||||
保持一致性是很重要的。它应用在变量名字和分组、方法命名、模块划分、目录结构、GUI、错误处理、日志输出和文档等很多方面。比如,如果某些变量是的相关,并一起出现(在声明、方法调用或数据库中的列),而且总是以相同的顺序使用它们。那么当其中一个消失或者整体被打乱时,你就会很容易发现。对于一个操作,如果在一个地方叫delete,就不要在另一个地方叫remove:务必使用相同的名字。史蒂夫·麦克奈尔在[代码大全][4]中对于使用相反命名有相同的建议。比如,begin和end是相反的,就如同start和stop一样。当使用相反对时不要混用不同对的名字(比如使用begin和stop)。
|
||||
保持一致性从整体看来是很重要的。它应用在变量名字和分组、方法命名、模块划分、目录结构、GUI、错误处理、日志输出和文档等很多方面。比如,如果某些变量是的相关,并一起出现(在声明、方法调用或数据库中的列),而且总是以相同的顺序使用它们。那么当其中一个消失或者整体被打乱时,你就会很容易发现。对于一个操作,如果在一个地方叫delete,就不要在另一个地方叫remove:务必使用相同的名字。史蒂夫·麦克奈尔在[代码大全][4]中对于使用相反命名有相同的建议。比如,begin和end是相反的,就如同start和stop一样。当使用相反对时不要混用不同对的名字(比如使用begin和stop)。
|
||||
|
||||
当修改一段程序时可能会引入非一致性。粗心大意的程序员不会注意到他们添加的代码是否和已有的代码保持一致。优秀程序员会严苛地确保在这些看似很小的细节上都要做得恰到好处。他们知道保持一致性对于在软件开发的整个过程中处理复杂性是多么的重要。
|
||||
当修改一段程序时可能会引入非一致性。粗心大意的程序员不会注意到他们添加的代码是否和已有的代码保持一致。优秀程序员会严苛地确保在这些看似很小的细节上都要做到精益求精。他们知道保持一致性对于在软件开发的整个过程中处理复杂性是多么的重要。
|
||||
|
||||
### 5. 学习能力 ###
|
||||
|
||||
作为一名软件开发者,你需要持续学习。在为软件添加一项新功能前,你必须明白为什么要这么做。在给一个已有程序添加代码前,你通常必须学习已有代码在做什么,以便合适地嵌入新功能。你还需要学习相关系统,以便正确地与它们交互。因此,快速学习的能力使你成为一名更加高效的开发者。
|
||||
作为一名软件开发者,你需要持续学习。在为软件添加一项新功能前,你必须明白为什么要这么做。在给一个已有程序添加代码前,你通常必须知道已有代码在做什么,以便合适地嵌入新功能。你还需要学习相关系统,以便正确地与它们交互。因此,快速学习的能力使你成为一名更加高效的开发者。
|
||||
|
||||
而且,因为软件工程领域的开发速度是如此的快速,所以新的编程语言、工具、技术和框架需要学习层出不穷。这是好还是坏,就看你怎么看。佛瑞德·布鲁克斯把学习能力列为[技能的快乐之一][5],对此我深表赞同。学习新事物本身就是令人心满意足的,它也意味着开发者的生活从不无聊。
|
||||
|
||||
### 总结 ###
|
||||
|
||||
上面所有的技能都是通用的——它们中没有一项是针对某种语言、某个框架或某种技术。如果你拥有它们,你就能快速学习一门新的语言或工具,在新的环境下写出优秀的软件。而且,因为它们在本质上是通用的,所以不会在若干年以后变得不实用。
|
||||
上面所有的技能都是通用的——它们中没有一项是针对某种语言、某个框架或某种技术。如果你拥有它们,你就能快速学习一门新的语言或工具,在新的环境下写出优秀的软件。而且,因为它们在本质上是通用的,所以不会在若干年以后过时。
|
||||
|
||||
这就是我对什么因素造就一个优秀程序员的回答。你认为造就一个优秀程序员的因素是哪些?在评论里让我知道吧。
|
||||
是什么造就了一个优秀的程序员?以上便是我的观点。你认为造就一个优秀程序员的因素有哪些?在评论里告诉我吧。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -51,7 +50,7 @@ via: http://henrikwarne.com/2014/06/30/what-makes-a-good-programmer/
|
||||
|
||||
作者:[Henrik Warne][a]
|
||||
译者:[KayGuoWhu](https://github.com/KayGuoWhu)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[Caroline](https://github.com/carolinewuyan)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -0,0 +1,64 @@
|
||||
After an 18 Month Gap, Opera for Linux Returns With New Stable Release
|
||||
================================================================================
|
||||
**The first stable release of Opera for Linux in more than 18 months is now available for download.**
|
||||
|
||||
![Hello again, Opera!](http://www.omgubuntu.co.uk/wp-content/uploads/2014/06/iopera.jpg)
|
||||
|
||||
Hello again, Opera!
|
||||
|
||||
Opera for Computers for Linux 26 (no really, that’s its name) features a complete top-to-bottom overhaul, new features, and better performance thanks to its Aura and Blink underpinnings (yes, it’s no longer based on the proprietary Presto web engine).
|
||||
|
||||
#### Features ####
|
||||
|
||||
The browser [wiggled its toes in tux-friendly waters back in June with the launch of a developer preview][1], but if you last tried Opera when it looked like this, you’ll want to grab some smelling salts: things have changed.
|
||||
|
||||
注:youtube 视频,发布时可换成链接地址
|
||||
<iframe width="750" height="422" src="https://www.youtube.com/embed/-kS10C2BUOs?feature=oembed" frameborder="0" allowfullscreen></iframe>
|
||||
|
||||
Alongside an impressive new look and blazing fast, standards-compliant rendering engine come many new and improved features.
|
||||
|
||||
- **Discover** — Shows articles from around the web in a range of categories
|
||||
- **Speed Dial** — Supports interactive widgets, folders, and themes
|
||||
- **Tab Peek** — Preview the content of an open tab without switching back to it
|
||||
- **Opera Turbo** — Data-saving mode ideal for patchy connections
|
||||
- **Rich bookmarking** — including new sharing functionality
|
||||
- **Add-ons** — compatible with Chrome extensions, too
|
||||
- **Support for HiDPI displays on Linux**
|
||||
|
||||
### Download Opera for Linux 26 ###
|
||||
|
||||
Opera say those running Opera 12.6 on a 64-bit version of Ubuntu still supported by Canonical will automatically receive this new update through the Ubuntu Software Center.
|
||||
|
||||
But in all honesty I’m not sure anyone is in that boat! So, helpfully, a Debian installer can be downloaded from the Opera website. This will also add the Opera repository to your Software Sources to enable you to receive future updates in a timely fashion.
|
||||
|
||||
- [Download Opera for Computers for Linux 26][2]
|
||||
|
||||
Feel free to kit your new browser out with our nifty Opera Add-On, too:
|
||||
|
||||
- [Install OMG! Ubuntu! Opera Extension][3]
|
||||
|
||||
#### Important Notice about Linux Support ####
|
||||
|
||||
**Opera for Linux is 64-bit only**. The company say this decision was made based on ‘what most Linux desktop users have installed’. While annoying it is part of a larger overall trend away from 32-bit software, with Opera for Mac also being 64-bit exclusive, too.
|
||||
|
||||
In another case of “spending limited resources wisely”, this release is only being officially supported on Ubuntu (and ‘buntu-based derivatives, including Linux Mint).
|
||||
|
||||
Users on other distributions, from Arch to openSUSE, can still install Opera for Linux but will need to [use a (fairly simple) workaround][4] or hunt down an unofficial repository.
|
||||
|
||||
**If you give it a spin let us know what you make of it in the comments below.**
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2014/12/new-opera-for-linux-goes-stable-download-now
|
||||
|
||||
作者:[Joey-Elijah Sneddon][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:https://plus.google.com/117485690627814051450/?rel=author
|
||||
[1]:http://www.omgubuntu.co.uk/2014/06/opera-linux-chromium-download-released
|
||||
[2]:http://opera.com/computer/linux
|
||||
[3]:https://addons.opera.com/en/extensions/details/omg-ubuntu-for-opera/?display=en
|
||||
[4]:https://gist.github.com/ruario/99522c94838d0680633c#file-manual-install-of-opera-md
|
@ -0,0 +1,61 @@
|
||||
Firefox 34 Arrives with Plugin-Free Video Calling and Powerful WebIDE
|
||||
================================================================================
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/firefox-banner.jpg)
|
||||
|
||||
**It’s been a busy few months for Mozilla, what with agreeing to a deal to switch its default search provider to Yahoo!, launching a custom version of its browser packed full of developer goodies, and launching Firefox OS handsets in new territories.**
|
||||
|
||||
Today, Mozilla has released Firefox 34 for Windows, Mac and Linux desktops, the first stable release since last month’s security n’ bug fix update.
|
||||
|
||||
### Headline Feature ###
|
||||
|
||||
Despite the rapid release cycle Mozilla once again manages to deliver some great new features.
|
||||
|
||||
Making its first appearance in a stable release is **Firefox Hello**, Mozilla’s WebRTC feature.
|
||||
|
||||
Though not enabled for all (you can manually turn it on via about:config), the feature bring plugin-free video and voice calls to the browser. No Skype, no add-ons, no hassle. You simple click the Firefox Hello icon, send your share link to the recipient to initiate a connection (assuming they’re also using a WebRTC-enabled browser, like Google Chrome or Opera).
|
||||
|
||||
![The ‘Hello Firefox’ Popup](http://www.omgubuntu.co.uk/wp-content/uploads/2014/12/hello-firefox.jpg)
|
||||
|
||||
The ‘Hello Firefox’ Popup
|
||||
|
||||
Signing in with a Firefox account will give you more features, including a contacts book with one-click calling (no need to share links).
|
||||
|
||||
#### Other Changes ####
|
||||
|
||||
Version 34 also makes it easier to **switch themes** (formerly known as ‘personas’), with live previews and a switcher menu now available on the **Customising canvas**:
|
||||
|
||||
![Ad-hoc theme switching](http://www.omgubuntu.co.uk/wp-content/uploads/2014/12/firefox-theme-switcher.jpg)
|
||||
|
||||
Ad-hoc theme switching
|
||||
|
||||
The first major search engine change arrives in this release, with Yandex shipping as default for Belarusian, Kazakh, and Russian locales. Yahoo! will be enabled for US users in the near future. But remember: [this does not affect the version of Firefox provided in Ubuntu][1].
|
||||
|
||||
US users get secure **HTTPS** Wikipedia searching from the search box:
|
||||
|
||||
![Secure Wikipedia Searches for English US Users](http://www.omgubuntu.co.uk/wp-content/uploads/2014/12/firefox-https-search-for-wikipedia.jpg)
|
||||
|
||||
Secure Wikipedia Searches for English US Users
|
||||
|
||||
In addition to improved HTML5 support (largely around WebCrypto features) a [**new WebIDE tool**][2] ships in this release, and is packed full of great tools for developers.
|
||||
|
||||
From Android connectivity and an in-app editor to support for deploying and testing apps in a Firefox OS simulator. If you haven’t tried Firefox OS in a while, v2.2 (unstable) has plenty to play with including edge swiping, new home screen arranging features, and some new APIs.
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/12/firefox-webide.jpg)
|
||||
|
||||
### Download Firefox 34 ###
|
||||
|
||||
Canonical will roll out Firefox 34 to users of Ubuntu 12.04, 14.04 and 14.10 in the next 24 hours or so, so keep an eye out. If you’re super impatient the release can also be downloaded from Mozilla servers directly.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2014/12/firefox-34-changes-include-hello-html5-webide
|
||||
|
||||
作者:[Joey-Elijah Sneddon ][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:https://plus.google.com/117485690627814051450/?rel=author
|
||||
[1]:http://www.omgubuntu.co.uk/2014/11/firefox-set-yahoo-default-search-engine-ubuntu-not-affected
|
||||
[2]:https://developer.mozilla.org/en-US/docs/Tools/WebIDE
|
@ -0,0 +1,78 @@
|
||||
From Mint to Trisquel: The Top Linux Distro Releases in November 2014
|
||||
================================================================================
|
||||
**November wasn’t heavy on new Linux distribution releases, but still had more than enough to keep distro-hoppers bouncing from download server to ISO mirror and back again.**
|
||||
|
||||
From the free software ethic of **Trisquel** to the nostalgic glow of **Ubuntu MATE**, let’s take a look at the major Linux distribution releases made in November 2014.
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/11/linux-mint-17.jpg)
|
||||
|
||||
### Linux Mint 17.1 ###
|
||||
|
||||
Linux Mint 17.1 ‘Rebecca’ is the big hitter on this list, going stable just in time to make it.
|
||||
|
||||
Based on Ubuntu 14.04 and using Linux kernel 3.13, the update also comes loaded with the **latest [Cinnamon 2.4][1] desktop environment, a customisable version of the Nemo file manager**, and improvements to the Update Manager to make package upgrades safer, saner and swifter.
|
||||
|
||||
Other changes see the ‘**Background**’, ‘**Login**’ and ‘**Theme**’ settings panes redesigned, and **‘Privacy’ and ‘Notification’ sections** added. The default **system font has been switched to Noto Sans**, while fans of customisation will enjoy new colors added to the Mint-X theme package.
|
||||
|
||||
Linux Mint 17.1 delivers a set of solid, well thought out changes and performance improvements, important for an LTS release supported until 2019.
|
||||
|
||||
More information and those all important downloads can be found on the official project website.
|
||||
|
||||
- [Visit the Linux Mint Website][2]
|
||||
|
||||
### Ubuntu Mate 14.04 LTS ###
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/11/ubuntu-mate-lts.jpg)
|
||||
|
||||
It may have [arrived after the release of Ubuntu MATE 14.10][3] (**timey-wimey**), but as the first Long Term Support release of the flavor Ubuntu MATE 14.04 was welcomed with warm arms, especially by those who love to bask in the green-hued glow of GNOME 2 nostalgia.
|
||||
|
||||
Packed with security updates, MATE 1.8.1, and new software included out of the box, Ubuntu MATE 14.04 LTS is a notable update with plenty to tempt those on the newer (but older) 14.10 release.
|
||||
|
||||
For full hardware requirements, support information and download links, head on over to the official project website.
|
||||
|
||||
- [Download Ubuntu MATE 14.04 LTS][4]
|
||||
|
||||
### Trisquel 7.0 ###
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/11/trisquel-7-300x224.jpg)
|
||||
|
||||
The [latest stable release of Trisquel][5], an Ubuntu-based distribution endorsed by the Free Software Foundation (FSF), arrived in the middle of November — and was met by **a lot** of interest.
|
||||
|
||||
The free (as in freedom) distribution is built on Ubuntu 14.04 LTS but ships without any of the proprietary bits and pieces. It’s a “pure” Linux experience that may require some workarounds, but serves to flag up the areas where more attention is needed in FOSS hardware support and app alternatives.
|
||||
|
||||
The Libre Linux 3.13 Kernel, GNOME 3.12 ‘Flashback’ desktop and the Firefox-based Abrowser 33 are among the changes to be found in Trisquel 7.
|
||||
|
||||
- [Download Trisquel 7][6]
|
||||
|
||||
### Other Notable Releases ###
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/11/opensuse-desktop-kde.jpg)
|
||||
|
||||
Outside of the Ubuntu-based bubble November 2014 saw releases of other popular Linux distributions, including beta milestones of Mageia 5 and Fedora 21, and a new stable release of Scientific Linux 6.6.
|
||||
|
||||
Joining them is openSUSE 13.2 (stable) — the first release to follow a change in the way openSUSE development takes place, the first to adopt the new openSUSE design guidelines and the first to ship with a streamlined (if still unwieldy) installer.
|
||||
|
||||
The release has been getting great reviews from the geek press, who gave particular praise for the GNOME 3.14 implementation.
|
||||
|
||||
Coming from Ubuntu, where “everything just works”, the cultural and technical gulf can be daunting at first. But if you have some free time, like the color green and relish a challenge, the official openSUSE 13.2 [release announcement][7] should be your starting point.
|
||||
|
||||
**Have you tried any of these releases above? Let us know what you made of them in the space down below .**
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2014/11/linux-distro-releases-round-november-2014
|
||||
|
||||
作者:[Joey-Elijah Sneddon][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:https://plus.google.com/117485690627814051450/?rel=author
|
||||
[1]:http://www.omgubuntu.co.uk/2014/11/install-cinnamon-2-4-ubuntu-14-04-lts
|
||||
[2]:http://www.linuxmint.com/download.php
|
||||
[3]:http://www.omgubuntu.co.uk/2014/11/ubuntu-mate-14-04-download-released
|
||||
[4]:https://ubuntu-mate.org/longterm/
|
||||
[5]:http://www.omgubuntu.co.uk/2014/11/download-trisquel-7-0-kernel-3-13
|
||||
[6]:https://trisquel.info/en/download
|
||||
[7]:https://news.opensuse.org/2014/11/04/opensuse-13-2-green-light-to-freedom/
|
@ -0,0 +1,34 @@
|
||||
Official Ubuntu 14.10 ‘Utopic Unicorn’ T-Shirts Now Available to Buy
|
||||
================================================================================
|
||||
![ubuntu-tshirt-runner](http://www.omgubuntu.co.uk/wp-content/uploads/2014/12/ubuntu-tshirt-runner.jpg)
|
||||
|
||||
**For a while it looked like an official mascot t-shirt to accompany the release of Ubuntu 14.10 would be as rare as the Unicorn fronting it. But, today, the Canonical Store was finally furnished with the fan-favourite merch item.**
|
||||
|
||||
The shirt is available to buy in either ‘dusk blue’ (men’s fit) or ‘hot pink’ (women’s fit), but aesthetic and form aside the design is the same. Each shirt is emblazoned with the custom origami ‘Utopic Unicorn’ emblem designed by Canonical. On the reverse of each shirt is the Ubuntu logotype and the words “Utopic Unicorn 14.10“, helping you promote the OS from the back as well as the front — I like it!
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/12/unicorn-t-shirt.jpg)
|
||||
|
||||
Available in small to XX-Large for men’s, and women’s sizes spanning 8-10 through 14-16, each t-shirt is priced at £11 in the UK, $17.45 in the US and €13.42 in Europe. A little higher than previous years and, as ever, minus postage/shipping and packaging.
|
||||
|
||||
- [Buy Men’s Ubuntu 14.10 T-Shirt][1]
|
||||
|
||||
- [Buy Women’s Ubuntu 14.10 T-Shirt][2]
|
||||
|
||||
Mascot t-shirts have been a staple of each Ubuntu release since as far back as version 8.04 Hardy Heron though they typically see release prior to the OS itself.
|
||||
|
||||
If you’re not a fan of this particular release you’ll find a limited number of older mascot-matched merchandise still available to buy and at a reduced price. So if you’d rather strut your stuff with a Salamander, promote a Pangolin or look tahr-iffic in a Trusty design, be sure to check out [the Sale section][3].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.omgubuntu.co.uk/2014/12/last-ubuntu-14-10-unicorn-t-shirts-now-available
|
||||
|
||||
作者:[Joey-Elijah Sneddon][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:https://plus.google.com/117485690627814051450/?rel=author
|
||||
[1]:http://shop.canonical.com/product_info.php?products_id=1153
|
||||
[2]:http://shop.canonical.com/product_info.php?products_id=1159
|
||||
[3]:http://shop.canonical.com/index.php?cPath=29
|
@ -0,0 +1,537 @@
|
||||
Readers' Choice Awards 2014--Linux Journal
|
||||
================================================================================
|
||||
It's time for another Readers' Choice issue of Linux Journal! The format last year was well received, so we've followed suit making your voices heard loud again. I couldn't help but add some commentary in a few places, but for the most part, we just reported results. Please enjoy this year's Readers' Choice Awards!
|
||||
|
||||
We'd like to make Readers' Choice Awards even better next year. Please send ideas for new categories and any comments or feedback via [http://www.linuxjournal.com/contact][1].
|
||||
|
||||
Please see the December 2014 issue of Linux Journal for the complete list of winners.
|
||||
|
||||
### Best Linux Distribution ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f1.jpg)
|
||||
|
||||
Although this year the Debian/Ubuntu-based distros took the lion's share of the votes, the "Best Linux Distribution" category is a bit like "Best Kind of Pizza"—even the bottom of the list is still pizza. It's hard to go wrong with Linux, and the wide variety of votes only proves how many different choices exist in our wonderful Open Source world.
|
||||
|
||||
- Ubuntu 16.5%
|
||||
- Debian 16.4%
|
||||
- Linux Mint 11%
|
||||
- Arch Linux 8.5%
|
||||
- Fedora 8.3%
|
||||
- CentOS 6%
|
||||
- openSUSE 5.3%
|
||||
- Kubuntu 4.1%
|
||||
- Gentoo 2.9%
|
||||
- Slackware 2.7%
|
||||
- Xubuntu 2.5%
|
||||
- Other 2.3%
|
||||
- Red Hat Enterprise Linux 1.6%
|
||||
- NixOS 1.4%
|
||||
- elementary OS 1.3%
|
||||
- Lubuntu 1.2%
|
||||
- CrunchBang 1%
|
||||
- Mageia .7%
|
||||
- LXLE .4%
|
||||
- Tails .4%
|
||||
- Android-x86 .3%
|
||||
- Bodhi Linux .3%
|
||||
- Chakra .3%
|
||||
- Kali Linux .3%
|
||||
- PCLinuxOS .3%
|
||||
- SolydK .3%
|
||||
- Mandriva .1%
|
||||
- Oracle Linux .1%
|
||||
|
||||
### Best Mobile Linux OS ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f2.jpg)
|
||||
|
||||
Android is such a dominant force in the mobile world, we decided to allow Android variants to be counted separately. So although the underlying system on some of these are indeed Android, it seems far more informative this way.
|
||||
|
||||
- Stock Android 37.1%
|
||||
- Sailfish OS 27.6%
|
||||
- CyanogenMod 20.2%
|
||||
- Other 3%
|
||||
- Ubuntu Phone 3%
|
||||
- Amazon Fire OS 1.5%
|
||||
- Ubuntu for Android 1.4%
|
||||
- Replicant .8%
|
||||
- Tizen .8%
|
||||
|
||||
### Best Linux Smartphone Manufacturer ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f3.jpg)
|
||||
|
||||
- Samsung 29%
|
||||
- Jolla 26.7%
|
||||
- Nexus 16.5%
|
||||
- Other 7.1%*
|
||||
- HTC 7%
|
||||
- LG 5.3%
|
||||
- Sony 3.7%
|
||||
- Nokia 1.8%
|
||||
- Huawei 1.4%
|
||||
- GeeksPhone 1%
|
||||
- Amazon .6%
|
||||
|
||||
*Under "Other", Motorola got many write-ins, followed by OnePlus.
|
||||
|
||||
### Best Linux Tablet ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f4.jpg)
|
||||
|
||||
- Google Nexus 7 35.3%
|
||||
- Google Nexus 10 14.8%
|
||||
- Samsung Galaxy Tab 14%
|
||||
- Samsung Galaxy Note 9.8%
|
||||
- ASUS Transformer Pad 8.4%
|
||||
- Other 6.4%
|
||||
- Kindle Fire HD 4.7%
|
||||
- ASUS MeMO Pad 2%
|
||||
- Dell Venue 1.6%
|
||||
- Acer Iconia One 1.4%
|
||||
- Samsung Galaxy Note Edge .9%
|
||||
- Ekoore Python S3 .7%
|
||||
|
||||
### Best Other Linux-Based Gadget (not including smartphones or tablets) ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f5.jpg)
|
||||
|
||||
We are a Raspberry Pi-loving bunch, that's for sure! But really, who can blame us? With the new B+ model, the already awesome RPi is getting sleeker and more useful. I'm no fortune teller, but I suspect I know next year's winner already.
|
||||
|
||||
- Raspberry Pi 71.4%
|
||||
- BeagleBone Black 8.1%
|
||||
- Other 4.3%*
|
||||
- Lego Mindstorms Ev3 3.7%
|
||||
- Moto 360 3.4%
|
||||
- Cubieboard 1.7%
|
||||
- Parrot A.R Drone 1.7%
|
||||
- Samsung Gear S 1.4%
|
||||
- Yamaha Motif XF8 1.1%
|
||||
- Nvidia Jetson-K1 Development System .8%
|
||||
- Cloudsto EVO Ubuntu Linux Mini PC .5%
|
||||
- VoCore Open Hardware Computer .5%
|
||||
- LG G Watch .4%
|
||||
- RaZberry .4%
|
||||
- VolksPC .4%
|
||||
- IFC6410 Pico-ITX Board .2%
|
||||
- JetBox 5300 .1%
|
||||
|
||||
*Under "Other", the most popular write-ins were Odroid and CuBox.
|
||||
|
||||
### Best Laptop Vendor ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/lenovo.jpg)
|
||||
|
||||
This category used to be a rating of which vendors worked the best with Linux, but thankfully, now most laptops work fairly well. So, we truly get to see the cream rise to the top and focus on things other than "it works with Linux". It's awesome living in the future.
|
||||
|
||||
- Lenovo 32%
|
||||
- ASUS 19.3%
|
||||
- Dell 18.5%
|
||||
- System76 10.6%
|
||||
- Other 7.9%*
|
||||
- Acer 4.5%
|
||||
- ThinkPenguin 1.9%
|
||||
- LinuxCertified 1.8%
|
||||
- ZaReason 1.6%
|
||||
- EmperorLinux 1.5%
|
||||
- CyberPower .3%
|
||||
- Eurocom .1%
|
||||
|
||||
*Under "Other", the most popular write-ins were (in this order) Apple running Linux, HP, Toshiba and Samsung.
|
||||
|
||||
### Best Content Management System ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f6.jpg)
|
||||
|
||||
- WordPress 34.7%
|
||||
- Drupal 25.3%
|
||||
- Joomla! 11.1%
|
||||
- MediaWiki 10.5%
|
||||
- Other 10%*
|
||||
- Alfresco 4.3%
|
||||
- WebGUI 1.3%
|
||||
- ikiwiki 1.1%
|
||||
- eZ publish .7%
|
||||
- Wolf CMS .4%
|
||||
- Elgg .3%
|
||||
- Blosxom .2%
|
||||
|
||||
*Under "Other", the most popular write-ins were (in this order) DokuWiki, Plone, Django and Typo3.
|
||||
|
||||
### Best Linux-Friendly Web Hosting Company ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/question.jpg)
|
||||
|
||||
When it comes to Web hosting, it's hard to find a company that isn't Linux-friendly these days. In fact, finding a hosting provider running Windows is more of a challenge. As is obvious by our winner ("Other"), the options are amazing. Perhaps a "Worst Web Hosting" category would be more useful!
|
||||
|
||||
- Other 22.8%*
|
||||
- Amazon 22.5%
|
||||
- Rackspace 13.1%
|
||||
- Linode 10.4%
|
||||
- GoDaddy.com 6.5%
|
||||
- OVH 5.6%
|
||||
- DreamHost 5.4%
|
||||
- 1&1 4.8%
|
||||
- LAMP Host 2.9%
|
||||
- Hurricane Electric 2.6%
|
||||
- Liquid Web .6%
|
||||
- RimuHosting .6%
|
||||
- Host Media .5%
|
||||
- Savvis .5%
|
||||
- Blacknight Solutions .4%
|
||||
- Netfirms .4%
|
||||
- Prgmr .4%
|
||||
|
||||
*Under "Other", the most write-ins went to (in this order) Digital Ocean (by a landslide), followed by Hetzner, BlueHost and WebFaction.
|
||||
|
||||
### Best Web Browser ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f7.jpg)
|
||||
|
||||
Firefox takes the gold this year by a significant margin. Even if you combine Chrome and Chromium, Firefox still takes the top spot. There was a time when we worried that the faithful Firefox would fade away, but thankfully, it's remained strong and continues to be a fast, viable, compatible browser.
|
||||
|
||||
- Firefox 53.8%
|
||||
- Chrome 26.9%
|
||||
- Chromium 8.1%
|
||||
- Iceweasel 4%
|
||||
- Opera 3%
|
||||
- Other 2%
|
||||
- SeaMonkey .8%
|
||||
- rekonq .5%
|
||||
- dwb .4%
|
||||
- QupZill .4%
|
||||
- Dillo .2%
|
||||
|
||||
### Best E-mail Client ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f8.jpg)
|
||||
|
||||
If I didn't know firsthand how many hard-core geeks live among us, I might accuse Kyle Rankin of voting fraud. His beloved Mutt e-mail client doesn't take top spot, but for a program without any graphical interface, third place is impressive!
|
||||
|
||||
- Mozilla Thunderbird 44.4%
|
||||
- Gmail 24.7%
|
||||
- Mutt 6.8%
|
||||
- Evolution 5.5%
|
||||
- KMail 5.3%
|
||||
- Other 3.2%
|
||||
- Claws Mail 2.2%
|
||||
- Zimbra 2%
|
||||
- Alpine 1.8%
|
||||
- Geary 1.7%
|
||||
- SeaMonkey 1%
|
||||
- Opera Mail .9%
|
||||
- Sylpheed .4%
|
||||
|
||||
### Best Audio Editing Tool ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f9.jpg)
|
||||
|
||||
- Audacity 69.1%
|
||||
- FFmpeg 10.8%
|
||||
- VLC 9.7%
|
||||
- Ardour 4.9%
|
||||
- Other 1.9%
|
||||
- SoX 1.3%
|
||||
- Mixxx 1.1%
|
||||
- LMMS .7%
|
||||
- Format Junkie .5%
|
||||
|
||||
### Best Audio Player ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f10.jpg)
|
||||
|
||||
We figured VLC would take top spot in the video player category (see below), but it was a bit of a surprise to see how many folks prefer it as an audio player as well. Perhaps it's become the one-stop shop for media playback. Either way, we're thrilled to see VLC on the top.
|
||||
|
||||
- VLC 25.2%
|
||||
- Amarok 15.3%
|
||||
- Rhythmbox 10.4%
|
||||
- Clementine 8.6%
|
||||
- MPlayer 6.1%
|
||||
- Spotify 5.9%
|
||||
- Audacious 5.5%
|
||||
- Banshee 4.6%
|
||||
- Other 4%*
|
||||
- XBMC 3.1%
|
||||
- foobar2000 3%
|
||||
- Xmms 2.4%
|
||||
- DeaDBeeF 1.2%
|
||||
- MOC .9%
|
||||
- cmus .8%
|
||||
- Ncmpcpp .8%
|
||||
- Guayadeque .6%
|
||||
- Mixxx .4%
|
||||
- MPC-HC .4%
|
||||
- Subsonic .4%
|
||||
- Nightingale .3%
|
||||
- Decibel Audio Player .2%
|
||||
|
||||
*Under "Other", Quod Libet had the most write-ins.
|
||||
|
||||
### Best Video Player ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f10_0.jpg)
|
||||
|
||||
- VLC 64.7%
|
||||
- MPlayer 14.5%
|
||||
- XBMC 6.4%
|
||||
- Totem 2.7%
|
||||
- Other 2.7%*
|
||||
- Plex 2%
|
||||
- Kaffeine 1.9%
|
||||
- mpv 1.6%
|
||||
- MythTV 1.6%
|
||||
- Amarok 1.4%
|
||||
- Xmms .3%
|
||||
- Daum Potplayer .2%
|
||||
- Clementine .1%
|
||||
|
||||
*Under "Other", most write-ins were for SMPlayer.
|
||||
|
||||
### Best Video Editor ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f10_1.jpg)
|
||||
|
||||
This is another testament to the geek factor when it comes to our readers. We didn't specify "non-linear editor", so by a transcoding technicality, VLC eked out a win in the video editing category. Well played, VLC, well played.
|
||||
|
||||
- VLC 17.5%
|
||||
- Kdenlive 16.4%
|
||||
- Blender 15.1%
|
||||
- Avidemux 13.2%
|
||||
- OpenShot 13.2%
|
||||
- Cinelerra 7.5%
|
||||
- PiTiVi 4.9%
|
||||
- LightWorks 4.8%
|
||||
- Other 4.7%
|
||||
- LiVES 1.4%
|
||||
- Shotcut .6%
|
||||
- Jahshaka .4%
|
||||
- Flowblade .4%
|
||||
|
||||
### Best Cloud-Based File Storage ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f11.jpg)
|
||||
|
||||
In a category that used to have few options, Dropbox still takes top spot, but the margin is closing. It's hard to argue against Dropbox's convenience and stability, but hosting your own data on ownCloud gives it quite a boost into the second-place spot.
|
||||
|
||||
- Dropbox 30.5%
|
||||
- ownCloud 23.6%
|
||||
- Google Drive 16%
|
||||
- rsync 8.3%
|
||||
- Other 7.5%*
|
||||
- Amazon S3 6.6%
|
||||
- SpiderOak 4.4%
|
||||
- Box 1.8%
|
||||
- Copy 1%
|
||||
- AjaXplorer .3%
|
||||
|
||||
*Under "Other", the most write-ins went to Younited and MEGA. Many also said things like "no cloud is the best choice/my files stay on my storage/local only".
|
||||
|
||||
### Best Linux Game ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/CIVILIZATION-V-FRONT-OF-BOX.jpg)
|
||||
|
||||
I rarely play games, so every year I look forward to this category to find the most popular options for those few times I do. I'm personally tickled to see NetHack so high on the list, especially considering the opposition. There's just something about wandering around random tunnels that appeals to the old-school DnD player in all of us.
|
||||
|
||||
- Civilization 5 26.5%
|
||||
- Other 23.5%*
|
||||
- Team Fortress 2 8.7%
|
||||
- NetHack 8.4%
|
||||
- X-Plane 10 7.1%
|
||||
- Dota 6.1%
|
||||
- Bastion 5.4%
|
||||
- Scorched 3D 3.7%
|
||||
- Destiny 3.6%
|
||||
- Ultima IV 1.9%
|
||||
- FreeCol 1.8%
|
||||
- Kpat 1.4%
|
||||
- FreeOrion 1.1%
|
||||
- Ryzom .9%
|
||||
|
||||
*Under "Other", the most write-ins were (in this order) Minecraft, 0 A.D., Frozen Bubble, Battle for Wesnoth, Portal and Counter Strike.
|
||||
|
||||
### Best Virtualization Solution ###
|
||||
|
||||
I think the relationship with Vagrant has helped Oracle's VirtualBox significantly in popularity. Yes, Vagrant works with other virtualization platforms, but since it so seamlessly integrates with VirtualBox, I think it gets quite a boost. Virtualization is such an efficient and reliable way to implement systems, bare-metal solutions are almost a thing of the past!
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/Virtualbox_logo_0.jpg)
|
||||
|
||||
- Oracle VM VirtualBox 33.4%
|
||||
- VMware 22.3%
|
||||
- KVM 21.1%
|
||||
- XEN 5.7%
|
||||
- QEMU 5.3%
|
||||
- OpenStack 4.9%
|
||||
- Other 4.2%*
|
||||
- OpenVZ 1.7%
|
||||
- Linux-VServer 1.3%
|
||||
- Symantec Workspace Virtualization .1%
|
||||
|
||||
*Under "Other", the most write-ins went to Docker, ProxMox and LXC, in that order.
|
||||
|
||||
### Best Monitoring Application ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/Nagios-Core-4.0.8.png)
|
||||
|
||||
- Nagios 27.1%
|
||||
- Wireshark 20.7%
|
||||
- htop 12.3%
|
||||
- Zabbix 10.5%
|
||||
- Other 8.6%*
|
||||
- Zenoss 6.2%
|
||||
- Munin 3.4%
|
||||
- PC Monitor 2.8%
|
||||
- New Relic 1.9%
|
||||
- Opsview 1.2%
|
||||
- SaltStack 1%
|
||||
- NTM (Network Traffic Monitor) .7%
|
||||
- xosview .7%
|
||||
- Manage Engine .5%
|
||||
- FlowViewer .3%
|
||||
- Circonus .2%
|
||||
- SysPeek .2%
|
||||
|
||||
*Under "Other", most write-ins went to Icinga and OpenNMS.
|
||||
|
||||
### Best DevOps Configuration Management Tool ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/Git-Logo-2Color.jpg)
|
||||
|
||||
It was interesting to see Git take top spot in this category, because although it certainly would work to use standard version control on configuration files, I always assumed it would be used alongside tools like Chef or Puppet. If nothing else, the DevOps movement has taught crusty old system administrators like myself to treat configuration files like code. Version control is incredible, and it seems as though most readers agree.
|
||||
|
||||
- Git 39.4%
|
||||
- Puppet 17.2%
|
||||
- Ansible 8.9%
|
||||
- cron jobs 8.8%
|
||||
- Subversion 7.6%
|
||||
- Chef 5%
|
||||
- SaltStack 5.4%
|
||||
- Other 4.6%*
|
||||
- CFEngine 3%
|
||||
|
||||
*Under "Other", most write-ins went to NixOps.
|
||||
|
||||
### Best Programming Language ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f13.jpg)
|
||||
|
||||
- Python 30.2%
|
||||
- C++ 17.8%
|
||||
- C 16.7%
|
||||
- Perl 7.1%
|
||||
- Java 6.9%
|
||||
- Other 4.6%
|
||||
- Ruby 4.3%
|
||||
- Go 2.4%
|
||||
- JavaScript 2.4%
|
||||
- QML 2.2%
|
||||
- Fortran 1.4%
|
||||
- Haskell 1.4%
|
||||
- Lisp 1.2%
|
||||
- Erlang .6%
|
||||
- Rust .6%
|
||||
- D .4%
|
||||
- Hack .1%
|
||||
|
||||
*Under "Other", most write-ins went to Scala, PHP and Clojure (in that order).
|
||||
|
||||
### Best Scripting Language ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f13_0.jpg)
|
||||
|
||||
Python is incredibly powerful, and it appears to be a favorite in both the scripting and programming categories. As someone who knows Bash and a little PHP, I think it's clear what I need to focus on as I delve into the world of development. Meaningful whitespace, here I come!
|
||||
|
||||
- Python 37.1%
|
||||
- Bash/Shell scripts 27%
|
||||
- Perl 11.8%
|
||||
- PHP 8.4%
|
||||
- JavaScript 6.7%
|
||||
- Ruby 4.9%
|
||||
- Other 2.1%
|
||||
- Lua 2%
|
||||
|
||||
### Best New Linux/Open-Source Product/Project ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f14.jpg)
|
||||
|
||||
Docker is clearly our winner here, and rightly so—what a game-changing technology. It's nice to see Jolla/Sailfish get some love as well. We love Android, but having a choice is a vital part of who we are as Open Source advocates.
|
||||
|
||||
- Docker 28%
|
||||
- Jolla and Sailfish OS 19%
|
||||
- LibreOffice 7%
|
||||
- ownCloud 5%
|
||||
- Steam 5%
|
||||
- Zenoss Control Center 5%
|
||||
- Raspberry Pi 4%
|
||||
- Git 4%
|
||||
- Apache Cordova/OpenOffice/Spark/Tika 3%
|
||||
- Ansible 2%
|
||||
- Elementary OS 2%
|
||||
- OpenStack 2%
|
||||
- Zabbix 2%
|
||||
- CoreOS 2%
|
||||
- Firefox OS 2%
|
||||
- KDE Connect 1%
|
||||
- NixOS and NixOps 1%
|
||||
- Open Media Vault 1%
|
||||
|
||||
### Coolest Thing You've Ever Done with Linux ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/tux_cruise.png)
|
||||
|
||||
This is my favorite new category for the Readers' Choice Awards. Imagine attending a Linux conference and asking everyone the coolest thing they've done with Linux. That's basically what happened here! We've listed a handful of our favorites, but for the entire list, check out: [http://www.linuxjournal.com/rc2014/coolest][2].
|
||||
|
||||
Note: the most common answers were "use it"; "rescue data/photos/whatever off broken Windows machines"; "convert friends/family/businesses to Linux"; "learn"; "teach"; "get a job"; "home automation"; and "build a home media server". The following list is of our favorite more-specific and unique answers, not the most common ones.
|
||||
|
||||
- Building my procmail pre-spam spam filter back in the mid-late 1990s.
|
||||
- 450-node compute cluster.
|
||||
- 7.1 channel preamp with integrated mopidy music player.
|
||||
- A robot running Linux (for the Eurobot annual competition).
|
||||
- Accidentally printing on the wrong continent.
|
||||
- Adding an audio channel to a video while also syncing it.
|
||||
- Analyzed NASA satellite data with self-written code.
|
||||
- Annoyed the cat remotely.
|
||||
- Automated my entire lighting setup in my house to respond to voice and my mobile apps.
|
||||
- Automatic window plant irrigation system.
|
||||
- Bathroom radio.
|
||||
- Brewing beer.
|
||||
- Built an application that runs on the International Space Station.
|
||||
- Built a system for real-time toll collection for a major toll highway system.
|
||||
- Built our own smartphone.
|
||||
- Built Web-based home alarm system on Raspberry Pi.
|
||||
- Cluster of Raspberry Pis to crack encrypted office documents.
|
||||
- Controlled my Parrot drone.
|
||||
- Controlled the comms for 186 Wind turbines.
|
||||
- Controlling my Meade Telescope with Stellarium under Linux.
|
||||
- Converted my old VHS family videos, using a laptop more than ten years old.
|
||||
- Created a mesh network in the subarctic.
|
||||
- Created an ocean environmental sensor buoy with radio data transmitter.
|
||||
- Discovered new planets.
|
||||
- Fixed a jabber server in Denver, USA, while in a hotel lobby in Amman, Jordan.
|
||||
- Got Linus' autograph on a Red Hat 5.0 CD.
|
||||
- Hacked my coffee machine to send me a text message when the coffee is ready.
|
||||
- Introduced my daughter to Lego Mindstorm EV3.
|
||||
- Monitor the temp and humidity of my wine cellar and open the doors when too hot or humid.
|
||||
- Replaced the controller in my hot tub with a Raspberry Pi.
|
||||
- Scripted opening and closing of a co-worker's CD tray every 15 seconds for four days.
|
||||
- Used an LFS system to move ACH transfers for a national gas company.
|
||||
- Flushed my toilet from another city.
|
||||
- Remote chicken door.
|
||||
- Web-based sprinkler controller for 16 stations on a Raspberry PI (also control the pool and yard lights).
|
||||
- Chaining SSH tunnels together to get from work to home via three hops due to restrictive network settings.
|
||||
- Built a system that monitors a renewable energy installation with two fixed solar arrays, a two axis sun tracking solar array and a wind turbine. Production and weather data are displayed on a Web site in real time.
|
||||
- Back in the days of modems, I had my computer call up my girlfriend every morning, so she would wake up and go to work.
|
||||
- Used a Wii controller, through Bluetooth with my Linux computer as an Infrared Camera, to detect the movement of my daughter's Fisher Price Sit and Spin Pony, and to control a video game.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxjournal.com/rc2014
|
||||
|
||||
作者:[Shawn Powers][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://www.linuxjournal.com/users/shawn-powers
|
||||
[1]:http://www.linuxjournal.com/contact
|
||||
[2]:http://www.linuxjournal.com/rc2014/coolest
|
@ -0,0 +1,38 @@
|
||||
Linus Torvalds Thanks Microsoft for a Great Black Friday Monitor Deal
|
||||
================================================================================
|
||||
![Linus Torvalds](http://i1-news.softpedia-static.com/images/news2/Linus-Torvalds-Thanks-Microsoft-for-a-Great-Black-Friday-Monitor-Deal-466599-2.jpg)
|
||||
|
||||
> The creator of the Linux kernel now has a UHD display
|
||||
|
||||
**Linus Torvalds is the creator of the Linux Kernel, he advocated for years against Microsoft's practices and he often talked about Windows. These are just some of the reasons why it's funny to see him thank Microsoft, even if it's probably done sarcastically.**
|
||||
|
||||
The rhetoric regarding the Linux vs. Windows subject has subsided a great deal in the last few years. There have been some issues with UEFI and other similar problems, but for the most part things have quieted down.
|
||||
|
||||
There is no one left at the Redmond campus to call Linux a cancer and no one is making fun of Windows for crashing all the time. In fact, there has been some sort of reconciliation between the two sides, which seems to benefit everyone.
|
||||
|
||||
It's not like Microsoft is ready to adopt the Linux kernel for their operating system, but the new management of the company talks about Linux as a friend, especially in the cloud.
|
||||
|
||||
They can no longer ignore it, even if they want to. The same happened with Linus Torvalds who hasn't said anything bad about Microsoft and Windows for a long time, and that is a good thing.
|
||||
|
||||
### Linus Torvalds saying "thanks" to Microsoft is not something you see every day ###
|
||||
|
||||
The creator of the Linux kernel talked about a great Black Friday deal he got from the Microsoft store, for a UHD monitor. He shared this piece of info on Google+ and some of the users also found it amusing to read that he's giving sincere thanks to Microsoft for their great deal.
|
||||
|
||||
"Whee. Just installed a new monitor. 3840x2160 resolution - it's the Dell 28" UHD panel - for $299 (€241) thanks to Microsoft's black Friday deal. Thanks MS! Ok, I have to admit that it's not actually a great panel: very clear color shifts off-center, 30Hz refresh etc. But still - I'm a nut for resolution, and at $299 (€241) I decided that this will carry me over until better panels start showing up at good prices," wrote Linus on [Google+][1].
|
||||
|
||||
In the meantime, he is also working on the latest kernel branch, 3.18, which will probably be released sometime at the end of this week. It's not clear how things will evolve after that, especially given the fact that the holidays are approaching fast, and devs might be a little sluggish when it comes to pushing patches and new features for the next 3.19 branch.
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://news.softpedia.com/news/Linus-Torvalds-Thanks-Microsoft-for-a-Great-Black-Friday-Monitor-Deal-466599.shtml
|
||||
|
||||
作者:[Silviu Stahie][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://news.softpedia.com/editors/browse/silviu-stahie
|
||||
[1]:https://plus.google.com/+LinusTorvalds/posts/4MwQKZhGkEr
|
@ -1,3 +1,4 @@
|
||||
mdjsjdqe translating...
|
||||
11 Useful Utilities To Supercharge Your Ubuntu Experience
|
||||
================================================================================
|
||||
**Whether you’re a relative novice or a seasoned pro, we all want to get the most from our operating system. Ubuntu, like most modern OSes, has more to offer than what is presented at first blush.**
|
||||
@ -151,4 +152,4 @@ via: http://www.omgubuntu.co.uk/2014/11/useful-tools-for-ubuntu-do-you-use-them
|
||||
[7]:https://apps.ubuntu.com/cat/applications/laptop-mode-tools/
|
||||
[8]:https://01.org/linuxgraphics/downloads/2014/intelr-graphics-installer-linux-1.0.7
|
||||
[9]:https://launchpad.net/i-nex
|
||||
[10]:https://apps.ubuntu.com/cat/applications/bleachbit/
|
||||
[10]:https://apps.ubuntu.com/cat/applications/bleachbit/
|
||||
|
@ -1,3 +1,4 @@
|
||||
[Translating by Stevearzh]
|
||||
Five Magnificent Linux Music Streaming Clients
|
||||
================================================================================
|
||||
Digital streams almost totally command my music listening these days. Over the years I have amassed a large collection of CDs at considerable expense; most of them now sit neglected gathering dust. Almost all music streaming services fall short of the audio quality of CDs, but their popularity has more to do with sheer convenience than high-fidelity sound reproduction. Music streaming has not only been to the detriment of CD sales; digital downloads have also experienced a slowing down of sales. This is only set to continue. Audiophiles may be tempted to embrace music streaming given that there are now services such as Tidal which offers high fidelity music streaming, 25 million tracks encoded with the FLAC format streamed at 1,411kbps.
|
||||
|
@ -0,0 +1,404 @@
|
||||
Intense Gameplay? Try these 13 Roguelike games
|
||||
================================================================================
|
||||
Roguelike is a sub-genre of role-playing games. It literally means "a game like Rogue". Rogue is a dungeon crawling video game first released in 1980, standing out for being fiendishly addictive. Its goal was to retrieve the Amulet of Yendor, hidden deep in the 26th level, and ascend back to the top.
|
||||
|
||||
There is no exact definition of a roguelike, but this type of game typically has the following characteristics:
|
||||
|
||||
- High fantasy narrative background
|
||||
- Procedural level generation. Most of the game world is generated by the game for every new gameplay session. This is meant to encourage replayability
|
||||
- Turn-based dungeon exploration and combat
|
||||
- Tile-based graphics that are randomly generated
|
||||
- Random conflict outcomes
|
||||
- Permanent death death works realistically, once you're gone, you're gone
|
||||
- High difficulty
|
||||
|
||||
This article compiles a good selection of roguelike games available for Linux. If you enjoy intense, addictive gameplay, try these 13 games. Don't be put off by the primitive graphics, you'll soon forget the visuals once you get immersed. All of them are available to download without charge, and almost all are released under an open source license.
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/DungeonCrawlStoneSoup.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games/Screenshot-Dungeon1.png)
|
||||
|
||||
Dungeon Crawl Stone Soup is an open-source, single-player, role-playing roguelike game of exploration and treasure-hunting in dungeons filled with dangerous and unfriendly monsters in a quest to rescue the mystifyingly fabulous Orb of Zot.
|
||||
|
||||
Dungeon Crawl Stone Soup is a continuation of Linley's Dungeon Crawl. It is openly developed and invites participation from the Crawl community.
|
||||
|
||||
Dungeon Crawl has superb, deep tactical gameplay, innovative magic and religion systems, and a grand variety of monsters to fight. Crawl is also one of the hardest roguelikes to beat. When you finally beat the game and write your victory post on rec.games.roguelike.misc, you know you have achieved something.
|
||||
|
||||
Features include:
|
||||
|
||||
- Well-rounded, deep tactically rich roguelike
|
||||
- Hand-drawn maps
|
||||
- Numerous portal vaults
|
||||
- Slick interface
|
||||
- Innovative magic and religion systems
|
||||
- Wide range of Gods, Characters, Items, and Smart Monsters
|
||||
|
||||
- Website: [crawl.develz.org][1]
|
||||
- Developer: Stone Soup devteam
|
||||
- License: Crawl General Public License
|
||||
- Version Number: 0.15.2
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/DwarfFortress.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games/Screenshot-DwarfFortress.png)
|
||||
|
||||
Dwarf Fortress is a single-player fantasy game, similar to NetHack. You can control a dwarven outpost or an adventurer in a randomly generated, persistent world.
|
||||
|
||||
The game features three modes of play (Dwarf Fortress, Adventurer and Legends modes), a distinct, randomly-generated world (complete with terrain, wildlife and legends), gruesome combat mechanics and vicious schools of carp.
|
||||
|
||||
Features include:
|
||||
|
||||
|
||||
- The world persists as long as you like, over many games, recording historical events and tracking changes
|
||||
- Command your dwarves as they search for wealth in the mountain
|
||||
- Craft treasures and furniture from many materials and improve these objects with precious metals, jewels and more
|
||||
- Defend yourself against attacks from hostile civilizations, the wilderness and the depths
|
||||
- Support the nobility as they make demands of your populace
|
||||
- Keep your dwarves happy and read their thoughts as they work and relax
|
||||
- Z coordinate allows you to dig out fortresses with multiple levels. Build towers or conquer the depths
|
||||
- Build floodgates to divert water for farming or to drown your adversaries
|
||||
- Play an adventurer and explore, quest for glory or seek vengeance
|
||||
- Meet adversaries from previous games
|
||||
- Recruit people in towns to come with you on your journey
|
||||
- Explore without cumbersome plot restrictions
|
||||
- Seamlessly wander the world -up to 197376 x 197376 squares total -or travel more rapidly on the region map
|
||||
- Accept quests from the town and civilization leaders
|
||||
- Retire and meet your old characters. Bring them along on an adventure with a new character or reactivate them and play directly
|
||||
- Z coordinate allows you to move seamlessly between dungeon levels and scale structures fighting adversaries above and below
|
||||
- The combat model uses skills, body parts, wrestling, charging and dodging between squares, bleeding, pain, nausea, and much more
|
||||
- A dynamic weather model tracks wind, humidity and air masses to create fronts, clouds, rain storms and blizzards
|
||||
- Over two hundred rock and mineral types are incorporated into the world, placed in their proper geological environments
|
||||
- Add new creatures, weapons, plants, metals and other objects via modifiable text files
|
||||
- Extended ASCII character set rendered in 16 colors (including black) as well as 8 background colors (including black)
|
||||
|
||||
- Website: [www.bay12games.com/dwarves/][2]
|
||||
- Developer: Tarn Adams
|
||||
- License: Freeware
|
||||
- Version Number: 0.40.19
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/ADOM.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-ADOM.png)
|
||||
|
||||
Ancient Domains of Mystery (ADOM) is a rogue-like game which has been in development since 1994.
|
||||
|
||||
It is a single-user game featuring the exploration of a dungeon complex. You control a fictional character described by race, class, attributes, skills, and equipment. This fictional character is trying to achieve a specific goal (see below) and succeed in a difficult quest. To fulfill the quest, you have to explore previously undiscovered tunnels and dungeons, fight hideous monsters, uncover long forgotten secrets, and find treasures of all kind.
|
||||
|
||||
During the game, you explore dungeon levels which are randomly generated each game. You might also encounter certain special levels, which present a particular challenge or are built around a certain theme.
|
||||
|
||||
Features include:
|
||||
|
||||
- Huge game world with hundreds of locations such as towns, randomized dungeons, elemental temples, graveyards, ancient ruins, towers and other secrets
|
||||
- Loads of races (dwarves, drakelings, mist elves, hurthlings, orcs, trolls, ratlings and many others) and even more classes (fighters, elementalists, assassins, chaos knights, duelists and much more) allowing for infinite play styles
|
||||
- Hundreds of monsters and items, many with enhanced random features
|
||||
- A corruption system forcing you to balance lust for power with fear of damnation
|
||||
- Spells, prayers, mindcraft, alchemy, crafting and more
|
||||
- Dozens of quests and branching story lines
|
||||
- Numerous wildly different endings that might alter reality itself
|
||||
|
||||
- Website: [www.adom.de][3]
|
||||
- Developer: Thomas Biskup
|
||||
- License: Postcardware
|
||||
- Version Number: 1.20 Prelease 20
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/ToME.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-ToME.png)
|
||||
|
||||
Tales of Maj’Eyal (ToME) is a free, open source roguelike RPG, featuring tactical turn-based combat and advanced character building. It is written as a module that runs in T-Engine 4.0.
|
||||
|
||||
This is the Age of Ascendancy, after over ten thousand years of strife, pain and chaos the known world is at last at relative peace. The Spellblaze last effects are now tamed, the land slowly heals itself and the civilisations rebuild themselves after the Age of Pyre.
|
||||
|
||||
Features include:
|
||||
|
||||
- Suitable for gamers without any rogueline experience
|
||||
- Supports both graphical tiles and ASCII mode
|
||||
- Over 40 abilities available on some characters
|
||||
- Talent system
|
||||
- Combat engine
|
||||
- Online persistent stat/achievement tracking
|
||||
- IRC chat client
|
||||
- Expandable and moddable
|
||||
- Atmospheric music
|
||||
- Unlock new races, classes, starting points, playmodes and features
|
||||
|
||||
- Website: [te4.org][4]
|
||||
- Developer: ToME Development Team
|
||||
- License: GNU GPL v3.0
|
||||
- Version Number: 1.2.5
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/CataclysmDarkDaysAhead1.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-Cataclysm.png)
|
||||
|
||||
Cataclysm is an open source post-apocalyptic roguelike, set in the countryside of fictional New England after a devastating plague of monsters and zombies. It is a continuation of Whale's original Cataclysm, which expands it with numerous new creatures, buildings, gameplay mechanics and many other features.
|
||||
|
||||
While some have described it as a "zombie game", there's far more to Cataclysm than that. Struggle to survive in a harsh, persistent, procedurally generated world. Scavenge the remnants of a dead civilization for for food, equipment, or, if you're lucky, a vehicle with a full tank of gas to get you the hell out of Dodge. Fight to defeat or escape from a wide variety of powerful monstrosities, from zombies to giant insects to killer robots and things far stranger and deadlier, and against the others like yourself, that want what you have...
|
||||
|
||||
Cataclysm is very different from most roguelikes in many ways. Rather than being set in a vertical, linear dungeon, it is set in an unbounded, 3D world. This means that exploration plays a much bigger role than in most roguelikes, and the game is much less linear. As the map is so huge, it is actually completely persistant between games. If you die, and start a new character, your new game will be set in the same game world as your last. Like in many roguelikes, you will be able to loot the dead bodies of previous characters; unlike most roguelikes, you will also be able to retrace their steps completely, and any dramatic changes made to the world will persist into your next game.
|
||||
|
||||
Features include:
|
||||
|
||||
|
||||
- Detailed character creation, with a plethora of traits to choose
|
||||
- Defense mode, a coffeebreak mode with fast-paced combat
|
||||
- Bionics; Similar to the magic system in many games
|
||||
- Mutations, both positive and negative
|
||||
- Unbounded, fully randomized world map that is persistent between characters
|
||||
- Item crafting
|
||||
- New recipes may be acquired by honing your knowledge through practice or learning from books
|
||||
- Realistic fire, smoke, and other dynamic map effects
|
||||
- A day/night cycle with the need to sleep. Use caffeine to stay awake longer if you must but be aware this is not healthy
|
||||
- Over 300 item types, including a multitude of real-world guns, drugs, and tools
|
||||
- Many drugs are addictive, and will require continuous use to avoid withdrawal effects.
|
||||
- Ability to board doors and windows, construct traps and fortify your home base to prevent a rude awakening by a zombie
|
||||
- Ability to construct your own wooden constructions, including walls and a roof
|
||||
- Ability to drive around in vehicles found in the post-apocalyptic landscape
|
||||
- These can be modified to your needs, or you could even build one from scratch
|
||||
- A temperature system, being too cold or too hot is quite hazardous
|
||||
- Preliminary tile support
|
||||
- WorldGen options, and versatile editing methods
|
||||
-
|
||||
- Website: [en.cataclysmdda.com][5]
|
||||
- Authors: Kevin Granade and others
|
||||
- License: Creative Commons Attribution-ShareAlike 3.0 Unported License
|
||||
- Version Number: 0.B
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/GoblinHack1.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-GoblinHack.png)
|
||||
|
||||
Goblin Hack is an open source roguelike OpenGL-based smooth-scrolling ASCII graphics game. The game is inspired by the likes of NetHack, but faster with fewer keys.
|
||||
|
||||
Goblin Hack has a simple interface that appears to appeal to players of all ages, and fires their imagination in today's world of over-rendered games.
|
||||
|
||||
Players can choose one of several classes before being thrown into the first floor of a randomized, ongoing dungeon.
|
||||
|
||||
Features include:
|
||||
|
||||
- Impressive graphics (compared with many other roguelike games)
|
||||
- Simple interface
|
||||
- Choose one of several classes before being thrown into the first floor of a randomized, ongoing dungeon
|
||||
- Manually save the game
|
||||
|
||||
- Website: [goblinhack.sourceforge.net][6], [github.com/goblinhack/goblinhack][7]
|
||||
- Authors: Neil McGill
|
||||
- License: GNU GPL v2
|
||||
- Version Number: 1.19
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/SLASH%27EM.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-SlashEM.png)
|
||||
|
||||
Super Lotsa Added Stuff Hack - Extended Magic (SLASH'EM) is a role-playing game where you control a single character. SLASH'EM is a variant of NetHack. It also has an interface and gameplay similar to Rogue, ADOM, Anghand and NetHack. You control the actions through the keyboard and view the world from an overhead perspective.
|
||||
|
||||
The problem: The Amulet of Yendor has been stolen. Not only that but it appears that the Wizard of Yendor (not a nice person), who took the amulet, is hiding in the Dungeons of Doom (not a friendly place).
|
||||
|
||||
Features include:
|
||||
|
||||
- Offers extra features, monsters, and items
|
||||
- Novel features inlude the Monk class and Sokoban levels
|
||||
- The main dungeon is much larger than in NetHack
|
||||
|
||||
- Website: [www.slashem.org][8]
|
||||
- Developer: The Slash'EM development team
|
||||
- License: MIT License, NetHack General Public License
|
||||
- Version Number: 0.0.7E7F3
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/NetHack.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games/Screenshot-NetHack.jpg)
|
||||
|
||||
NetHack is a wonderfully silly, yet quite addictive Dungeons and Dragons-style adventure game. The "net" element references that its development has been coordinated through the Internet. The "hack" element refers to a genre of role-playing games known as hack and slash for their focus on combat.
|
||||
|
||||
In NetHack you play the part of a fierce fighter, wizard, or any of many other classes, fighting your way down to retrieve the Amulet of Yendor (try saying THAT one backwards!) for your god. On the way, you might encounter a quantum mechanic or two, or perhaps a microscopic space fleet, or -- if you're REALLY lucky -- the Ravenous Bugblatter Beast of Traal.
|
||||
|
||||
Features include:
|
||||
|
||||
- 45-50 levels, most of which are randomly generated
|
||||
- Variety of items: weapons, armour, scrolls, potions, rings, gems, and an assortment of tools such as keys and lamps
|
||||
- Blessings and curses
|
||||
- Permadeath: expired characters cannot be revived without having made backup copies of the actual save files
|
||||
- Interfaces:
|
||||
- Console
|
||||
- Graphical, using X, Qt toolkit or GNOME libraries
|
||||
|
||||
- Website: [www.nethack.org][9]
|
||||
- Developer: The NetHack DevTeam
|
||||
- License: NetHack General Public License
|
||||
- Version Number: 3.4.3
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/AsciiSector.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-AsciiSector.png)
|
||||
|
||||
Ascii Sector is a free space combat/exploration/trading game which is based on the classic computer game Wing Commander: Privateer released by Origin Systems in 1993.
|
||||
|
||||
In Ascii Sector, you start with a simple spaceship and can then accept missions or trade goods to earn enough money to upgrade your ship or buy a new one. You can engage in deadly fights both in space, on the ground and on board spaceships, and using the Ascii Sector scripting language, you can create your own quests for the game or have fun with other players' quests.
|
||||
|
||||
Features include:
|
||||
|
||||
- Uses the ANSI character set for the graphics
|
||||
- Real depth to the gameplay
|
||||
- Offers a wide variety of bases, missions, commodities and ships
|
||||
- Ships include: Broadsword, Centurion, Demon, Dralthi, Drayman, Galaxy, Gladius, Gothri, Kamekh, Nexus, Orion, Paradign, Stileto, Talon, Tarsus, and Ulysses
|
||||
- Four quadrants: Alizarin, Crimson, Mauve, and Viridian
|
||||
- Downloadable quests
|
||||
- Scripting of quests
|
||||
- Ascii Sector quest language, create your own stories in the Ascii Sector universe
|
||||
- NPCs on planets can be attacked and robbed
|
||||
- Persistent fleets that can move around, change control of systems, engage enemy fleets, head back for repairs and rebuilds
|
||||
- Ships whose systems have been disabled can be boarded
|
||||
- Download high quality music files
|
||||
|
||||
- Website: [www.asciisector.net][10]
|
||||
- Developer: Christian Knudsen
|
||||
- License: Freeware
|
||||
- Version Number: 0.7.1.4
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/Angband.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-Angband.png)
|
||||
|
||||
Angband is a free, single-player graphical dungeon exploration game that uses ASCII characters where you take the role of an adventurer, exploring a deep dungeon, fighting monsters, and acquiring the best weaponry you can, in preparation for a final battle with Morgoth, the Lord of Darkness. It has been in development since the 1990s.
|
||||
|
||||
Angband is along the lines of Rogue and NetHack. It is derived from the games Moria and Umoria, which were in turn based on Rogue. It is often described as a "roguelike" game because the look and feel of the game is still quite similar to Rogue. Many of these new creatures and objects are drawn from the writings of J.R.R Tolkien, although some of the monsters come straight from classical mythology, Dungeons & Dragons, Rolemaster, or the minds of the orginal Angband coders.
|
||||
|
||||
Features include:
|
||||
|
||||
- 100 level dungeon
|
||||
- New levels are randomly generated
|
||||
- Choose to be a human, half-elf, elf, hobbit, gnome, dwarf, half-orc, half-troll, dunadan, high-elf, or kobold
|
||||
- Artifacts
|
||||
- Spellcasting
|
||||
- Monsters
|
||||
- Monster pits
|
||||
- Monster nests
|
||||
|
||||
- Website: [rephial.org][11]
|
||||
- Developer: Angband Development Team
|
||||
- License: GNU GPL v2
|
||||
- Version Number: 3.5.0
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/UnNetHack1.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-UnNetHack.png)
|
||||
|
||||
UnNetHack is a fork of NetHack. NetHack was first released in 1987, and is considered by many gamers to be one of the best gaming experiences the computing world offers.
|
||||
|
||||
Features include:
|
||||
|
||||
|
||||
- Adds a number of enhancements to NetHack such as additional monsters, more levels, a few new objects, additional dangers, more challenging gameplay, and most importantly more entertainment than vanilla NetHack
|
||||
- Tutorial to help new players get started
|
||||
|
||||
- Website: [sourceforge.net/apps/trac/unnethack][12]
|
||||
- Authors: Patric Mueller
|
||||
- License: Nethack General Public License
|
||||
- Version Number: 5.1.0
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/HydraSlayer.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-HydraSlayer.png)
|
||||
|
||||
Hydra Slayer is an open source Roguelike game focused on slaying Hydras. It is inspired by Greek mythology, Dungeon Crawl, MathRL seven day roguelike, and some mathematical puzzles about brave heroes slaying many headed beasts.
|
||||
|
||||
Features include:
|
||||
|
||||
- Unique gameplay mechanics
|
||||
- A theme which mixes Greek mythology and mathematics
|
||||
- Traditional roguelike ASCII graphics, or tiles/3D display
|
||||
- 5 player character races with very distinct tactics, strengths and weaknesses
|
||||
- 28 enemy types:
|
||||
- 10 basic types of elemental hydras (each of them has two special variations)
|
||||
- 8 types of special enemies
|
||||
- Harmless mushrooms for strategic advantage
|
||||
- 28 types of equipment (not counting material and size/power variations)
|
||||
- 15 weapon materials
|
||||
- 18 types of non-equipment items
|
||||
- 3 game geometries to choose
|
||||
- 8 level topologies (including the Mobius strip and Klein bottle)
|
||||
- 11 level generators
|
||||
- 2 endings
|
||||
|
||||
- Website: [www.roguetemple.com/z/hydra][13]
|
||||
- Developer: Zeno Rogue
|
||||
- License: GNU GPL v2
|
||||
- Version Number: 16.1
|
||||
|
||||
----------
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content2/png/Brogue1.png)
|
||||
|
||||
![](http://www.linuxlinks.com/portal/content/reviews/Games2/Screenshot-Brogue.png)
|
||||
|
||||
Brogue is an open source Roguelike game for Mac OS X, Windows, Linux, iOS and Android.
|
||||
|
||||
Brogue is a direct descendant of Rogue, a dungeon crawling video game first developed by Michael Toy and Glenn Wichman around 1980. Unlike other popular modern roguelikes, Brogue favors simplicity over complexity, while trying to ensure that the interactions between components are interesting and varied.
|
||||
|
||||
The goal of the game is to travel to the 26th subterranean floor of the dungeon, retrieve the Amulet of Yendor and return with it to the surface. For the truly skillful who desire further challenge, depths below 26 contain three lumenstones each, items which confer an increased score upon victory.
|
||||
|
||||
Brogue is a challenging game, but still great fun to play. Try not to be disheartened by the difficulty of the game; with some application, Brogue will become very addictive.
|
||||
|
||||
Features include:
|
||||
|
||||
- Favors simplicity over complexity
|
||||
- User-friendly features
|
||||
- Compared with Rogue, Brogue has a more sophisticated level generation
|
||||
- XP and levelling system removed
|
||||
- Traps, protecting items
|
||||
- Additional monster types and magical items
|
||||
|
||||
- Website: [sites.google.com/site/broguegame][14]
|
||||
- Authors: Brian Walker
|
||||
- License: GNU Affero GPL
|
||||
- Version Number: 1.7.3
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxlinks.com/article/201412031524381/RoguelikeGames.html
|
||||
|
||||
作者:Frazer Kline
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[1]:http://crawl.develz.org/
|
||||
[2]:http://www.bay12games.com/dwarves/index.html
|
||||
[3]:http://www.adom.de/
|
||||
[4]:http://te4.org/
|
||||
[5]:http://en.cataclysmdda.com/
|
||||
[6]:http://goblinhack.sourceforge.net/
|
||||
[7]:https://github.com/goblinhack/goblinhack
|
||||
[8]:http://www.slashem.org/
|
||||
[9]:http://www.nethack.org/
|
||||
[10]:http://www.asciisector.net/
|
||||
[11]:http://rephial.org/
|
||||
[12]:http://sourceforge.net/apps/trac/unnethack/
|
||||
[13]:http://www.roguetemple.com/z/hydra/
|
||||
[14]:https://sites.google.com/site/broguegame/
|
@ -1,106 +0,0 @@
|
||||
When Microsoft Went A-Courting
|
||||
================================================================================
|
||||
![](http://www.linuxinsider.com/ai/769827/microsoft-linux-open-source.jpg)
|
||||
|
||||
**Open-sourcing .Net "doesn't have a thing to do with Linux -- it has to do with SaaS and having a CEO that isn't a whackadoo living in the 90s," said SoylentNews blogger hairyfeet. "Nadella is smart and realizes the value of a programming language is not patents or OS exclusivity but in services and support for the language. ... The more platforms the language can be used on, the better."**
|
||||
|
||||
Fans of free and open source software perhaps may be excused if they've felt a bit confused over the past few days. Dizziness, headaches and vertigo also have been common.
|
||||
|
||||
What strange new ailment is this, you might ask?
|
||||
|
||||
Well, it's no ailment, Linux Girl is glad to report. That, however, doesn't mean it's any simpler to remedy.
|
||||
|
||||
The cause, it turns out, is none other than the news that Microsoft is open sourcing .Net and also expanding it to run on Linux and Mac OS.
|
||||
|
||||
Yes, you heard that right: Steve Ballmer once may have [called Linux a "cancer,"][1] but today Redmond has a newfound "[love" for Linux][2] that can't be contained!
|
||||
|
||||
It's making Microsoft behave in strange new ways -- and it's also driving FOSS fans to the blogosphere's seedy Broken Windows Lounge in greater numbers than ever.
|
||||
|
||||
Can tequila help make sense of it all? That's one of many questions now being investigated.
|
||||
|
||||
### 'A Chance to Thrive' ###
|
||||
|
||||
"This is big news, and somewhat overdue," Chris Travers, a [blogger][3] who works on the [LedgerSMB][4] project, told Linux Girl.
|
||||
|
||||
![](http://www.linuxinsider.com/images/article_images/linuxgirl_bg_pinkswirl_150x245.jpg)
|
||||
|
||||
"We live in a world where new programming languages which are open sourced thrive even without being backed by big businesses, and closed source programming languages only survive with help from big businesses," Travers said. "Bing closed source killed REBOL 2.x," for example.
|
||||
|
||||
"This move has clearly been in the works for some time -- a large company like Microsoft does not open source something of this complexity overnight -- and I think to some extent Microsoft must have seen the writing on the wall when Sun open sourced the OpenJDK," he suggested.
|
||||
|
||||
Meanwhile, "this gives languages like C# and F# a chance to thrive well beyond their current markets," Travers said.
|
||||
|
||||
### 'I Still Don't Trust You' ###
|
||||
|
||||
"I want to be the first to say, 'Thank you Microsoft!'" [Linux Rants][5] blogger Mike Stone began. "We really appreciate you open sourcing .Net and taking it cross platform. It's a step in the right direction!
|
||||
|
||||
"I still don't trust you, though," he added.
|
||||
|
||||
"I love that Microsoft is considering open source, but I have seen no movement towards the GPL," Stone told Linux Girl. "This strikes me as an opportunity to get their software on multiple platforms but tie the developers down to Microsoft."
|
||||
|
||||
Moreover, there are no guarantees that Microsoft will keep .Net open source over the years, he pointed out.
|
||||
|
||||
"That means that Microsoft could withdraw and leave all applications developed with the intention of being cross platform legally Windows-only," he warned. "I won't put any faith in Microsoft's commitment, and I'll always be looking for their sudden but inevitable betrayal."
|
||||
|
||||
### 'Watch for Greeks Bearing Gifts' ###
|
||||
|
||||
The move reeks of desperation, Google+ blogger Alessandro Ebersol suggested.
|
||||
|
||||
"They arrived too late," Ebersol said. "Java already ate the best dishes, and while .Net was a Windows/Microsoft-only thing, Java was everywhere. Good luck trying to be adopted."
|
||||
|
||||
Besides, "I would only believe it if it was GPL'ed to protect the creators of the code," he added. "A fragile MIT license can be overturned at anytime."
|
||||
|
||||
In any case, "with all the hatred the company generated towards the FLOSS community, they burned the bridge beyond repair," Ebersol concluded. "The bottom line: Timeo Danaos et dona ferentes -- Watch carefully for Greeks bearing gifts..."
|
||||
|
||||
### 'Like a Cat Loves Mice' ###
|
||||
|
||||
Microsoft loves Linux "like a cat loves mice," blogger [Robert Pogson][6] quipped. "Sure, they will play with */Linux, but they are not our friends."
|
||||
|
||||
What's happened is that the FOSS and Linux communities have defeated "all the barriers to entry that M$ placed in the way of competition since M$ first made a deal with IBM to supply an OS," Pogson said. "You bet M$ is trying desperately to 'make friends' with 'the enemy' now that their position is overrun.
|
||||
|
||||
"It's all good," he added. "M$ can still cause a lot of trouble by spending $billions foolishly or they can become a normal business and compete on price/performance. That's not 'love' -- that's accepting reality."
|
||||
|
||||
### Adapt or Die ###
|
||||
|
||||
The problem for Microsoft is that "open source development packages are starting to get good enough for developers," offered consultant and [Slashdot][7] blogger Gerhard Mack.
|
||||
|
||||
"At my last job, most of the programmers wanted Eclipse rather than Visual Studio, even though the client software was Windows-only, and I had a slowly increasing number move their development to Linux while using Windows for testing," Mack recalled.
|
||||
|
||||
"Very few people want to be locked into just one platform, so more of the mindshare is moving away from single-platform languages," he added. "Microsoft must now choose between adapting or dying."
|
||||
|
||||
### No Warm Fuzzies Here ###
|
||||
|
||||
art of what's driving the move is also that "the various cloud implementations are very heavily Linux, and even on Microsoft's own Azure cloud, Linux is a strong presence," Google+ blogger Kevin O'Brien suggested.
|
||||
|
||||
"Nadella has made it clear he is taking Microsoft in a cloud direction, so he almost has to do this to even stay in the game," O'Brien asserted.
|
||||
|
||||
That said, however, "I don't expect Microsoft to be cuddly and nice -- they will do whatever they think is in their best corporate interest," he said.
|
||||
|
||||
In fact, "it doesn't have a thing to do with Linux -- it has to do with SaaS and having a CEO that isn't a whackadoo living in the 90s," SoylentNews blogger hairyfeet told Linux Girl.
|
||||
|
||||
"Nadella is smart and realizes the value of a programming language is not patents or OS exclusivity but in services and support for the language," hairyfeet explained. "With that in mind, the more platforms the language can be used on, the better, as that adds value to the language and will give you that many more you can sell services to."
|
||||
|
||||
### The Fall of an Empire ###
|
||||
|
||||
ll in all, if anything is clear, it's that "Micro$oft's empire is tumbling down," said Google+ blogger Gonzalo Velasco C.
|
||||
|
||||
"I don't know or care about why they are lying and saying they love Linux," he added. "I just hope the GNU/Linux community is smarter than recently (cough, Systemd, cough) and refuses Micro$oft .Net and other infections. GNU/Linux must use only FLOSS tools."
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxinsider.com/story/When-Microsoft-Went-A-Courting-81374.html
|
||||
|
||||
作者:[Katherine Noyes][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://twitter.com/noyesk
|
||||
[1]:http://www.linuxinsider.com/perl/story/35697.html
|
||||
[2]:http://www.theregister.co.uk/2014/10/20/microsoft_cloud_event/
|
||||
[3]:http://ledgersmbdev.blogspot.com/
|
||||
[4]:http://www.ledgersmb.org/
|
||||
[5]:http://linuxrants.com/
|
||||
[6]:http://mrpogson.com/
|
||||
[7]:http://slashdot.org/
|
156
sources/talk/20141203 Docker--Present and Future.md
Normal file
156
sources/talk/20141203 Docker--Present and Future.md
Normal file
@ -0,0 +1,156 @@
|
||||
Docker: Present and Future
|
||||
================================================================================
|
||||
### Docker - the story so far ###
|
||||
|
||||
Docker is a toolset for Linux containers designed to ‘build, ship and run’ distributed applications. It was first released as an open source project by DotCloud in March 2013. The project quickly became popular, leading to DotCloud rebranded as Docker Inc (and ultimately [selling off their original PaaS business][1]). [Docker 1.0][2] was released in June 2014, and the monthly release cadence that led up to the June release has been sustained since.
|
||||
|
||||
The 1.0 release marked the point where Docker Inc considered the platform sufficiently mature to be used in production (with the company and partners providing paid for support options). The monthly release of point updates shows that the project is still evolving quickly, adding new features, and addressing issues as they are found. The project has however successfully decoupled ‘ship’ from ‘run’, so images sourced from any version of Docker can be used with any other version (with both forward and backward compatibility), something that provides a stable foundation for Docker use despite rapid change.
|
||||
|
||||
The growth of Docker into one of the most popular open source projects could be perceived as hype, but there is a great deal of substance. Docker has attracted support from many brand names across the industry, including Amazon, Canonical, CenturyLink, Google, IBM, Microsoft, New Relic, Pivotal, Red Hat and VMware. This is making it almost ubiquitously available wherever Linux can be found. In addition to the big names many startups are growing up around Docker, or changing direction to be better aligned with Docker. Those partnerships (large and small) are helping to drive rapid evolution of the core project and its surrounding ecosystem.
|
||||
|
||||
### A brief technical overview of Docker ###
|
||||
|
||||
Docker makes use of Linux kernel facilities such as [cGroups][3], namespaces and [SElinux][4] to provide isolation between containers. At first Docker was a front end for the [LXC][5] container management subsystem, but release 0.9 introduced [libcontainer][6], which is a native Go language library that provides the interface between user space and the kernel.
|
||||
|
||||
Containers sit on top of a union file system, such as [AUFS][7], which allows for the sharing of components such as operating system images and installed libraries across multiple containers. The layering approach in the filesystem is also exploited by the [Dockerfile][8] DevOps tool, which is able to cache operations that have already completed successfully. This can greatly speed up test cycles by taking out the wait time usually taken to install operating systems and application dependencies. Shared libraries between containers can also reduce RAM footprint.
|
||||
|
||||
A container is started from an image, which may be locally created, cached locally, or downloaded from a registry. Docker Inc operates the [Docker Hub public registry][9], which hosts official repositories for a variety of operating systems, middleware and databases. Organisations and individuals can host public repositories for images at Docker Hub, and there are also subscription services for hosting private repositories. Since an uploaded image could contain almost anything Docker Hub provides an automated build facility (that was previously called ‘trusted build’) where images are constructed from a Dockerfile that serves as a manifest for the contents of the image.
|
||||
|
||||
### Containers versus VMs ###
|
||||
|
||||
Containers are potentially much more efficient than VMs because they’re able to share a single kernel and share application libraries. This can lead to substantially smaller RAM footprints even when compared to virtualisation systems that can make use of RAM overcommitment. Storage footprints can also be reduced where deployed containers share underlying image layers. IBM’s Boden Russel has done [benchmarking][10] that illustrates these differences.
|
||||
|
||||
Containers also present a lower systems overhead than VMs, so the performance of an application inside a container will generally be the same or better versus the same application running within a VM. A team of IBM researchers have published a [performance comparison of virtual machines and Linux containers][11].
|
||||
|
||||
One area where containers are weaker than VMs is isolation. VMs can take advantage of ring -1 [hardware isolation][12] such as that provided by Intel’s VT-d and VT-x technologies. Such isolation prevents VMs from ‘breaking out’ and interfering with each other. Containers don’t yet have any form of hardware isolation, which makes them susceptible to exploits. A proof of concept attack named [Shocker][13] showed that Docker versions prior to 1.0 were vulnerable. Although Docker 1.0 fixed the particular issue exploited by Shocker, Docker CTO Solomon Hykes [stated][14], “When we feel comfortable saying that Docker out-of-the-box can safely contain untrusted uid0 programs, we will say so clearly.”. Hykes’s statement acknowledges that other exploits and associated risks remain, and that more work will need to be done before containers can become trustworthy.
|
||||
|
||||
For many use cases the choice of containers or VMs is a false dichotomy. Docker works well within a VM, which allows it to be used on existing virtual infrastructure, private clouds and public clouds. It’s also possible to run VMs inside containers, which is something that Google uses as part of its cloud platform. Given the widespread availability of infrastructure as a service (IaaS) that provides VMs on demand it’s reasonable to expect that containers and VMs will be used together for years to come. It’s also possible that container management and virtualisation technologies might be brought together to provide a best of both worlds approach; so a hardware trust anchored micro virtualisation implementation behind libcontainer could integrate with the Docker tool chain and ecosystem at the front end, but use a different back end that provides better isolation. Micro virtualisation (such as Bromium’s [vSentry][15] and VMware’s [Project Fargo][16]) is already used in desktop environments to provide hardware based isolation between applications, so similar approaches could be used along with libcontainer as an alternative to the container mechanisms in the Linux kernel.
|
||||
|
||||
### ‘Dockerizing’ applications ###
|
||||
|
||||
Pretty much any Linux application can run inside a Docker container. There are no limitations on choice of languages or frameworks. The only practical limitation is what a container is allowed to do from an operating system perspective. Even that bar can be lowered by running containers in privileged mode, which substantially reduces controls (and correspondingly increases risk of the containerised application being able to cause damage to the host operating system).
|
||||
|
||||
Containers are started from images, and images can be made from running containers. There are essentially two ways to get applications into containers - manually and Dockerfile..
|
||||
|
||||
#### Manual builds ####
|
||||
|
||||
A manual build starts by launching a container with a base operating system image. An interactive terminal can then be used to install applications and dependencies using the package manager offered by the chosen flavour of Linux. Zef Hemel provides a walk through of the process in his article ‘[Using Linux Containers to Support Portable Application Deployment][17]’. Once the application is installed the container can be pushed to a registry (such as Docker Hub) or exported into a tar file.
|
||||
|
||||
#### Dockerfile ####
|
||||
|
||||
Dockerfile is a system for scripting the construction of Docker containers. Each Dockerfile specifies the base image to start from and then a series of commands that are run in the container and/or files that are added to the container. The Dockerfile can also specify ports to be exposed, the working directory when a container is started and the default command on startup. Containers built with Dockerfiles can be pushed or exported just like manual builds. Dockerfiles can also be used in Docker Hub’s automated build system so that images are built from scratch in a system under the control of Docker Inc with the source of that image visible to anybody that might use it.
|
||||
|
||||
#### One process? ####
|
||||
|
||||
Whether images are built manually or with Dockerfile a key consideration is that only a single process is invoked when the container is launched. For a container serving a single purpose, such as running an application server, running a single process isn’t an issue (and some argue that containers should only have a single process). For situations where it’s desirable to have multiple processes running inside a container a [supervisor][18] process must be launched that can then spawn the other desired processes. There is no init system within containers, so anything that relies on systemd, upstart or similar won’t work without modification.
|
||||
|
||||
### Containers and microservices ###
|
||||
|
||||
A full description of the philosophy and benefits of using a microservices architecture is beyond the scope of this article (and well covered in the [InfoQ eMag: Microservices][19]). Containers are however a convenient way to bundle and deploy instances of microservices.
|
||||
|
||||
Whilst most practical examples of large scale microservices deployments to date have been on top of (large numbers of) VMs, containers offer the opportunity to deploy at a smaller scale. The ability for containers to have a shared RAM and disk footprint for operating systems, libraries common application code also means that deploying multiple versions of services side by side can be made very efficient.
|
||||
|
||||
### Connecting containers ###
|
||||
|
||||
Small applications will fit inside a single container, but in many cases an application will be spread across multiple containers. Docker’s success has spawned a flurry of new application compositing tools, orchestration tools and platform as a service (PaaS) implementations. Behind most of these efforts is a desire to simplify the process of constructing an application from a set of interconnected containers. Many tools also help with scaling, fault tolerance, performance management and version control of deployed assets.
|
||||
|
||||
#### Connectivity ####
|
||||
|
||||
Docker’s networking capabilities are fairly primitive. Services within containers can be made accessible to other containers on the same host, and Docker can also map ports onto the host operating system to make services available across a network. The officially sponsored approach to connectivity is [libchan][20], which is a library that provides Go like [channels][21] over the network. Until libchan finds its way into applications there’s room for third parties to provide complementary network services. For example, [Flocker][22] has taken a proxy based approach to make services portable across hosts (along with their underlying storage).
|
||||
|
||||
#### Compositing ####
|
||||
|
||||
Docker has native mechanisms for linking containers together where metadata about a dependency can be passed into the dependent container and consumed within as environment variables and hosts entries. Application compositing tools like [Fig][23] and [geard][24] express the dependency graph inside a single file so that multiple containers can be brought together into a coherent system. CenturyLink’s [Panamax][25] compositing tool takes a similar underlying approach to Fig and geard, but adds a web based user interface, and integrates directly with GitHub so that applications can be shared.
|
||||
|
||||
#### Orchestration ####
|
||||
|
||||
Orchestration systems like [Decking][26], New Relic’s [Centurion][27] and Google’s [Kubernetes][28] all aim to help with the deployment and life cycle management of containers. There are also numerous examples (such as [Mesosphere][29]) of [Apache Mesos][30] (and particularly its [Marathon][31] framework for long running applications) being used along with Docker. By providing an abstraction between the application needs (e.g. expressed as a requirement for CPU cores and memory) and underlying infrastructure, the orchestration tools provide decoupling that’s designed to simplify both application development and data centre operations. There is such a variety of orchestration systems because many have emerged from internal systems previously developed to manage large scale deployments of containers; for example Kubernetes is based on Google’s [Omega][32] system that’s used to manage containers across the Google estate.
|
||||
|
||||
Whilst there is some degree of functional overlap between the compositing tools and the orchestration tools there are also ways that they can complement each other. For example Fig might be used to describe how containers interact functionally whilst Kubernetes pods might be used to provide monitoring and scaling.
|
||||
|
||||
#### Platforms (as a Service) ####
|
||||
|
||||
A number of Docker native PaaS implementations such as [Deis][33] and [Flynn][34] have emerged to take advantage of the fact that Linux containers provide a great degree of developer flexibility (rather than being ‘opinionated’ about a given set of languages and frameworks). Other platforms such as CloudFoundry, OpenShift and Apcera Continuum have taken the route of integrating Docker based functionality into their existing systems, so that applications based on Docker images (or the Dockerfiles that make them) can be deployed and managed alongside of apps using previously supported languages and frameworks.
|
||||
|
||||
### All the clouds ###
|
||||
|
||||
Since Docker can run in any Linux VM with a reasonably up to date kernel it can run in pretty much every cloud offering IaaS. Many of the major cloud providers have announced additional support for Docker and its ecosystem.
|
||||
|
||||
Amazon have introduced Docker into their Elastic Beanstalk system (which is an orchestration service over underlying IaaS). Google have Docker enabled ‘managed VMs’, which provide a halfway house between the PaaS of App Engine and the IaaS of Compute Engine. Microsoft and IBM have both announced services based on Kubernetes so that multi container applications can be deployed and managed on their clouds.
|
||||
|
||||
To provide a consistent interface to the wide variety of back ends now available the Docker team have introduced [libswarm][35], which will integrate with a multitude of clouds and resource management systems. One of the stated aims of libswarm is to ‘avoid vendor lock-in by swapping any service out with another’. This is accomplished by presenting a consistent set of services (with associated APIs) that attach to implementation specific back ends. For example the Docker server service presents the Docker remote API to a local Docker command line tool so that containers can be managed on an array of service providers.
|
||||
|
||||
New service types based on Docker are still in their infancy. London based Orchard labs offered a Docker hosting service, but Docker Inc said that the service wouldn’t be a priority after acquiring Orchard. Docker Inc has also sold its previous DotCloud PaaS business to cloudControl. Services based on older container management systems such as [OpenVZ][36] are already commonplace, so to a certain extent Docker needs to prove its worth to hosting providers.
|
||||
|
||||
### Docker and the distros ###
|
||||
|
||||
Docker has already become a standard feature of major Linux distributions like Ubuntu, Red Hat Enterprise Linux (RHEL) and CentOS. Unfortunately the distributions move at a different pace to the Docker project, so the versions found in a distribution can be well behind the latest available. For example Ubuntu 14.04 was released with Docker 0.9.1, and that didn’t change on the point release upgrade to Ubuntu 14.04.1 (by which time Docker was at 1.1.2). There are also namespace issues in official repositories since Docker was also the name of a KDE system tray; so with Ubuntu 14.04 the package name and command line tool are both ‘docker.io’.
|
||||
|
||||
Things aren’t much different in the Enterprise Linux world. CentOS 7 comes with Docker 0.11.1, a development release that precedes Docker Inc’s announcement of production readiness with Docker 1.0. Linux distribution users that want the latest version for promised stability, performance and security will be better off following the [installation instructions][37] and using repositories hosted by Docker Inc rather than taking the version included in their distribution.
|
||||
|
||||
The arrival of Docker has spawned new Linux distributions such as [CoreOS][38] and Red Hat’s [Project Atomic][39] that are designed to be a minimal environment for running containers. These distributions come with newer kernels and Docker versions than the traditional distributions. They also have lower memory and disk footprints. The new distributions also come with new tools for managing large scale deployments such as [fleet][40] ‘a distributed init system’ and [etcd][41] for metadata management. There are also new mechanisms for updating the distribution itself so that the latest versions of the kernel and Docker can be used. This acknowledges that one of the effects of using Docker is that it pushes attention away from the distribution and its package management solution, making the Linux kernel (and Docker subsystem using it) more important.
|
||||
|
||||
New distributions might be the best way of running Docker, but traditional distributions and their package managers remain very important within containers. Docker Hub hosts official images for Debian, Ubuntu, and CentOS. There’s also a ‘semi-official’ repository for Fedora images. RHEL images aren’t available in Docker Hub, as they’re distributed directly from Red Hat. This means that the automated build mechanism on Docker Hub is only available to those using pure open source distributions (and willing to trust the provenance of the base images curated by the Docker Inc team).
|
||||
|
||||
Whilst Docker Hub integrates with source control systems such as GitHub and Bitbucket for automated builds the package managers used during the build process create a complex relationship between a build specification (in a Dockerfile) and the image resulting from a build. Non deterministic results from the build process isn’t specifically a Docker problem - it’s a result of how package managers work. A build done one day will get a given version, and a build done another time may get a later version, which is why package managers have upgrade facilities. The container abstraction (caring less about the contents of a container) along with container proliferation (because of lightweight resource utilisation) is however likely to make this a pain point that gets associated with Docker.
|
||||
|
||||
### The future of Docker ###
|
||||
|
||||
Docker Inc has set a clear path on the development of core capabilities (libcontainer), cross service management (libswarm) and messaging between containers (libchan). Meanwhile the company has already shown a willingness to consume its own ecosystem with the Orchard Labs acquisition. There is however more to Docker than Docker Inc, with contributions to the project coming from big names like Google, IBM and Red Hat. With a benevolent dictator in the shape of CTO Solomon Hykes at the helm there is a clear nexus of technical leadership for both the company and the project. Over its first 18 months the project has shown an ability to move fast by using its own output, and there are no signs of that abating.
|
||||
|
||||
Many investors are looking at the features matrix for VMware’s ESX/vSphere platform from a decade ago and figuring out where the gaps (and opportunities) lie between enterprise expectations driven by the popularity of VMs and the existing Docker ecosystem. Areas like networking, storage and fine grained version management (for the contents of containers) are presently underserved by the existing Docker ecosystem, and provide opportunities for both startups and incumbents.
|
||||
|
||||
Over time it’s likely that the distinction between VMs and containers (the ‘run’ part of Docker) will become less important, which will push attention to the ‘build’ and ‘ship’ aspects. The changes here will make the question of ‘what happens to Docker?’ much less important than ‘what happens to the IT industry as a result of Docker?’.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.infoq.com/articles/docker-future
|
||||
|
||||
作者:[Chris Swan][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://www.infoq.com/author/Chris-Swan
|
||||
[1]:http://blog.dotcloud.com/dotcloud-paas-joins-cloudcontrol
|
||||
[2]:http://www.infoq.com/news/2014/06/docker_1.0
|
||||
[3]:https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt
|
||||
[4]:http://selinuxproject.org/page/Main_Page
|
||||
[5]:https://linuxcontainers.org/
|
||||
[6]:http://blog.docker.com/2014/03/docker-0-9-introducing-execution-drivers-and-libcontainer/
|
||||
[7]:http://aufs.sourceforge.net/aufs.html
|
||||
[8]:https://docs.docker.com/reference/builder/
|
||||
[9]:https://registry.hub.docker.com/
|
||||
[10]:http://bodenr.blogspot.co.uk/2014/05/kvm-and-docker-lxc-benchmarking-with.html?m=1
|
||||
[11]:http://domino.research.ibm.com/library/cyberdig.nsf/papers/0929052195DD819C85257D2300681E7B/$File/rc25482.pdf
|
||||
[12]:https://en.wikipedia.org/wiki/X86_virtualization#Hardware-assisted_virtualization
|
||||
[13]:http://stealth.openwall.net/xSports/shocker.c
|
||||
[14]:https://news.ycombinator.com/item?id=7910117
|
||||
[15]:http://www.bromium.com/products/vsentry.html
|
||||
[16]:http://cto.vmware.com/vmware-docker-better-together/
|
||||
[17]:http://www.infoq.com/articles/docker-containers
|
||||
[18]:http://docs.docker.com/articles/using_supervisord/
|
||||
[19]:http://www.infoq.com/minibooks/emag-microservices
|
||||
[20]:https://github.com/docker/libchan
|
||||
[21]:https://gobyexample.com/channels
|
||||
[22]:http://www.infoq.com/news/2014/08/clusterhq-launch-flocker
|
||||
[23]:http://www.fig.sh/
|
||||
[24]:http://openshift.github.io/geard/
|
||||
[25]:http://panamax.io/
|
||||
[26]:http://decking.io/
|
||||
[27]:https://github.com/newrelic/centurion
|
||||
[28]:https://github.com/GoogleCloudPlatform/kubernetes
|
||||
[29]:https://mesosphere.io/2013/09/26/docker-on-mesos/
|
||||
[30]:http://mesos.apache.org/
|
||||
[31]:https://github.com/mesosphere/marathon
|
||||
[32]:http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/41684.pdf
|
||||
[33]:http://deis.io/
|
||||
[34]:https://flynn.io/
|
||||
[35]:https://github.com/docker/libswarm
|
||||
[36]:http://openvz.org/Main_Page
|
||||
[37]:https://docs.docker.com/installation/#installation
|
||||
[38]:https://coreos.com/
|
||||
[39]:http://www.projectatomic.io/
|
||||
[40]:https://github.com/coreos/fleet
|
||||
[41]:https://github.com/coreos/etcd
|
48
sources/talk/20141204 CoreOS breaks with Docker.md
Normal file
48
sources/talk/20141204 CoreOS breaks with Docker.md
Normal file
@ -0,0 +1,48 @@
|
||||
CoreOS breaks with Docker
|
||||
================================================================================
|
||||
> Summary: CoreOS, a new enterprise Linux company and a Docker partner, is now proposing its own alternative to Docker's container technology.
|
||||
|
||||
[Docker][1] exploded out of nowhere in 2014 to make container technology white hot in cloud and datacenter technical circles. Even [Microsoft joined its open-source virtualization revolution][2]. Now, however, early Docker supporter [CoreOS][3], a new large-scale Linux distributor vendor, is turning its back on it and developing its own container technology: [Rocket][4].
|
||||
|
||||
![](http://cdn-static.zdnet.com/i/r/story/70/00/036331/coreos-200x77.jpg?hash=MTAvMJZ3MJ&upscale=1)
|
||||
|
||||
While [CoreOS][5] is relatively unknown outside of Linux circles and Silicon Valley, it's seen by those in the know as an up and coming Linux distribution for datacenters and clouds. It's not an insignificant company crying foul, because [Docker's take on virtualization has proven to be so popular][6]. Indeed, CoreOS currently requires Docker to work well, and Brandon Philips, CoreOS' co-founder and CTO, has been a top Docker contributor and was serving on the Docker governance board.
|
||||
|
||||
So, why is CoreOS breaking with Docker? First, because "We believe strongly in the Unix philosophy: Tools should be independently useful, but have clean integration points." However, it also said that "Docker now is building tools for launching cloud servers, systems for clustering, and a wide range of functions: Building images, running images, uploading, downloading, and eventually even overlay networking, all compiled into one monolithic binary running primarily as root on your server."
|
||||
|
||||
In short, instead of Docker being a Unix-style, simple reusable component, CoreOS sees Docker becoming a platform. And CoreOS has no interest in that.
|
||||
|
||||
Instead, with Rocket, they propose going back to the [original Docker proposal][7] for what a container should be.
|
||||
|
||||
CoreOS spells out that Rocket will be:
|
||||
|
||||
- **Composable**: All tools for downloading, installing, and running containers should be well integrated, but independent and composable.
|
||||
- **Secure**: Isolation should be pluggable, and the crypto primitives for strong trust, image auditing, and application identity should exist from day one.
|
||||
- **Image distribution**: Discovery of container images should be simple and facilitate a federated namespace and distributed retrieval. This opens the possibility of alternative protocols, such as BitTorrent, and deployments to private environments without the requirement of a registry.
|
||||
- **Open**: The format and runtime should be well specified and developed by a community. We want independent implementations of tools to be able to run the same container consistently.
|
||||
|
||||
To do this, CoreOS is not forking Docker. Alex Polvi, CoreOS' CEO, wrote, "From a security and composability perspective, the Docker process model — where everything runs through a central daemon — is fundamentally flawed. To 'fix' Docker would essentially mean a rewrite of the project, while inheriting all the baggage of the existing implementation."
|
||||
|
||||
CoreOS already has an [alpha version of Rocket on GitHub][8], but it's still open to other ideas on how to build a Docker alternative. At the same time, however, CoreOS states that it won't be leaving Docker behind. "We will continue to make sure CoreOS is the best place to run Docker ... [and] expect Docker to continue to be fully integrated with CoreOS as it is today."
|
||||
|
||||
While I can understand CoreOS' concerns, I find it hard to imagine that its attempt to come up with a successful alternative to Docker will come to anything. Docker certainly isn't perfect, but in a matter of mere months, it gathered support from almost everyone in the enterprise operating system business. The only way I can see CoreOS' Rocket launching successfully will be if Docker falls flat on its face, and I just don't see that happening.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.zdnet.com/coreos-breaks-with-docker-7000036331/#ftag=RSS06bb67b
|
||||
|
||||
作者:[Steven J. Vaughan-Nichols][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://www.zdnet.com/meet-the-team/us/steven-j-vaughan-nichols/
|
||||
[1]:https://www.docker.com/
|
||||
[2]:http://www.zdnet.com/docker-container-support-coming-to-microsofts-next-windows-server-release-7000034708
|
||||
[3]:https://coreos.com/
|
||||
[4]:https://coreos.com/blog/rocket
|
||||
[5]:http://www.zdnet.com/coreos-linux-for-the-cloud-and-the-datacenter-7000031137/
|
||||
[6]:http://www.zdnet.com/what-is-docker-and-why-is-it-so-darn-popular-7000032269/
|
||||
[7]:https://github.com/docker/docker/commit/0db56e6c519b19ec16c6fbd12e3cee7dfa6018c5
|
||||
[8]:https://github.com/coreos/rocket
|
@ -0,0 +1,49 @@
|
||||
CoreOS Team Develops Rocket, Breaks with Docker
|
||||
================================================================================
|
||||
![](https://farm8.staticflickr.com/7297/12199695124_53d5323167_t.jpg)
|
||||
|
||||
[Docker][1] has easily emerged as one of the top open source stories of the year, and has helped many organizations [benefit from container technology][2]. As we’ve reported, even Google is [working closely][3] with it, and Microsoft is as well.
|
||||
|
||||
However, the folks behind CoreOS, a very popular Linux flavor for use in cloud deployments, are developing their own container technology, [dubbed Rocket][4], which will actually compete with Docker. Here are the details.
|
||||
|
||||
Rocket is a new container runtime, designed for composability, security, and speed, according to the CoreOS team. The group has released a [prototype version on GitHub][5] to begin getting community feedback.
|
||||
|
||||
“When Docker was first introduced to us in early 2013, the idea of a “standard container” was striking and immediately attractive: a simple component, a composable unit, that could be used in a variety of systems. The Docker repository [included a manifesto][6] of what a standard container should be. This was a rally cry to the industry, and we quickly followed. We thought Docker would become a simple unit that we can all agree on.”
|
||||
|
||||
“Unfortunately, a simple re-usable component is not how things are playing out. Docker now is building tools for launching cloud servers, systems for clustering, and a wide range of functions: building images, running images, uploading, downloading, and eventually even overlay networking, all compiled into one monolithic binary running primarily as root on your server. The standard container manifesto [was removed][7]. We should stop talking about Docker containers, and start talking about the Docker Platform.”
|
||||
|
||||
“We still believe in the original premise of containers that Docker introduced, so we are doing something about it. Rocket is a command line tool, rkt, for running App Containers. An ‘App Container’ is the specification of an image format, container runtime, and a discovery mechanism.”
|
||||
|
||||
There is a specification coming for App Container Images (ACI). Anyone can [Read about and contribute to the ACI draft][8].
|
||||
|
||||
The Register also [notes this interesting aspect][9] of Rocket:
|
||||
|
||||
“Significantly, all of CoreOS's tools for working with App Container will be integrated, yet independent from one another. Rocket can run as a standalone tool on any flavor of Linux, not just CoreOS.”
|
||||
|
||||
In a [blog post][10], Docker CEO Ben Golub voiced disagreement with CoreOS's move, and he writes:
|
||||
|
||||
“There are technical or philosophical differences, which appears to be the case with the recent announcement regarding Rocket. We hope to address some of the technical arguments posed by the Rocket project in a subsequent post.”
|
||||
|
||||
It sounds like a standards skirmish is going to come of all this, but, as is often the case with standards confrontations, users may benefit from the competition.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://ostatic.com/blog/coreos-team-develops-rocket-breaks-with-docker
|
||||
|
||||
作者:[Sam Dean][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://ostatic.com/member/samdean
|
||||
[1]:https://www.docker.com/
|
||||
[2]:http://ostatic.com/blog/linux-containers-with-docker
|
||||
[3]:http://ostatic.com/blog/google-sets-sights-squarely-on-docker-with-new-container-engine
|
||||
[4]:https://coreos.com/blog/rocket/
|
||||
[5]:https://github.com/coreos/rocket
|
||||
[6]:https://github.com/docker/docker/commit/0db56e6c519b19ec16c6fbd12e3cee7dfa6018c5
|
||||
[7]:https://github.com/docker/docker/commit/eed00a4afd1e8e8e35f8ca640c94d9c9e9babaf7
|
||||
[8]:https://github.com/coreos/rocket/blob/master/app-container/SPEC.md#app-container-image
|
||||
[9]:http://www.theregister.co.uk/2014/12/01/coreos_rocket_announcement/
|
||||
[10]:http://blog.docker.com/2014/12/initial-thoughts-on-the-rocket-announcement/
|
@ -0,0 +1,57 @@
|
||||
Interview: Apache Software Foundation Elevates Drill to Top-Level Project
|
||||
================================================================================
|
||||
![](http://i1311.photobucket.com/albums/s669/webworkerdaily/tomer_zps5e1225aa.png)
|
||||
|
||||
The Apache Software Foundation (ASF) has [announced][1] that [Apache Drill][2] has graduated from the Apache Incubator to become a Top-Level Project (TLP).
|
||||
|
||||
Apache Drill is billed as the world's first schema-free SQL query engine that delivers real-time insights by removing the constraint of building and maintaining schemas before data can be analyzed.
|
||||
|
||||
Drill enables rapid application development on Apache Hadoop and also allows enterprise BI analysts to access Hadoop in a self-service fashion. OStatic caught up with Tomer Shiran (shown here), a member of the Drill Project Management Committee, to get his thoughts. Here they are in an interview.
|
||||
|
||||
**Can you provide a brief overview of what Drill is and what kinds of users it can make a difference for?**
|
||||
|
||||
Drill is the world's first distributed, schema-free SQL engine. Analysts and developers can use Drill to interactively explore data in Hadoop and other NoSQL databases, such as HBase and MongoDB. There's no need to explicitly define and maintain schemas, as Drill can automatically leverage the structure that's embedded in the data.
|
||||
|
||||
This enables self-service data exploration, which is not possible with traditional data warehouses or SQL-on-Hadoop solutions like Hive and Impala, in which DBAs must manage schemas and transform the data before it can be analyzed.
|
||||
|
||||
**What level of community involvement with Drill already exists?**
|
||||
|
||||
Drill is an Apache project, so it's not owned by any vendor. Developers in the community can contribute to Drill. MapR currently employs the largest number of contributors, but we're seeing an increasing number of contributions from other companies, and that trend has been accelerating in recent months.
|
||||
|
||||
For example, the MongoDB storage plugin (enabling queries on MongoDB) was contributed by developers at Intuit.
|
||||
|
||||
**Hadoop has a lot of momentum on the Big Data front. How can Drill help organizations leveraging Hadoop?**
|
||||
|
||||
Drill is the ideal interactive SQL engine for Hadoop. One of the main reasons organizations choose Hadoop is due to its flexibility and agility. Unlike traditional databases, getting data into Hadoop is easy, and users can load data in any shape or size on their own. Early attempts at SQL on Hadoop (eg, Hive, Impala) force schemas to be created and maintained even for self-describing data like JSON, Parquet and HBase tables.
|
||||
|
||||
These systems also require data to be transformed before it can be queried. Drill is the only SQL engine for Hadoop that doesn't force schemas to be defined before data can be queried, and doesn't require any data transformations. In other words, Drill maintains the flexibility and agility paradigms that made Hadoop popular, thus making it the natural technology for data exploration and BI on Hadoop.
|
||||
|
||||
**What does Drill's status as a top-level project at Apache mean for its development and future?**
|
||||
|
||||
Drill's graduation to a top-level project is an indication that Drill has established a strong community of users and developers. Graduation is a decision made by the Apache Software Foundation (ASF) board, and it provides confidence to Drill's potential users and contributors that the project has a strong foundation. From a governance standpoint, a top-level project has its own board (also known as PMC). The PMC Chair (Jacques Nadeau) is a VP at Apache.
|
||||
|
||||
**How do you think Drill will evolve over the next several years?**
|
||||
|
||||
Drill has a large and growing community of contributors. Drill 1.0 will be out in Q1'15. We'll see many new features over the next several years. Here are a just a few examples of initiatives that are currently under way:
|
||||
|
||||
Drill currently supports HDFS, HBase and MongoDB. Additional data sources are being added, including Cassandra and RDBMS (all JDBC-enabled databases, including Oracle and MySQL). A single query can incorporate/join data from different sources. In the next year, Drill will become the standard SQL engine for modern datastores (which are all schema-free in nature): Hadoop, NoSQL databases - HBase/MongoDB/Cassandra, and search - Elasticsearch/Solr.
|
||||
|
||||
A single enterprise or cloud provider will be able to serve multiple groups/departments/organizations, each having its own workloads and SLA requirements. For example, in Drill 1.0 will support user impersonation, meaning that a query can only access the data that the user is authorized to access, and this will work with all supported data sources (Hadoop, HBase, MongoDB, etc.)
|
||||
|
||||
Drill will support not only SELECT and CREATE TABLE ... AS SELECT (CTAS) queries, but also INSERT/UPDATE/DELETE, enabling Drill to be used for operational applications (in addition to data exploration and analytics). Drill will also support the ultra-low latency and high concurrency required for such use cases.
|
||||
|
||||
Full TPC-DS support. Unlike other SQL-on-Hadoop technologies, Drill is designed to support the ANSI SQL standard as opposed to a SQL-like language. This provides better support for BI and other tools. Drill will be able to run TPC-DS, unmodified, in 2015.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://ostatic.com/blog/interview-apache-software-foundation-elevates-drill-to-top-level-project
|
||||
|
||||
作者:[Sam Dean][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://ostatic.com/member/samdean
|
||||
[1]:https://blogs.apache.org/foundation/entry/the_apache_software_foundation_announces66
|
||||
[2]:http://drill.apache.org/
|
@ -1,129 +0,0 @@
|
||||
forsil translating ...
|
||||
How to use on-screen virtual keyboard on Linux
|
||||
================================================================================
|
||||
On-screen virtual keyboard is an alternative input method that can replace a real hardware keyboard. Virtual keyboard may be a necessity in various cases. For example, your hardware keyboard is just broken; you do not have enough keyboards for extra machines; your hardware does not have an available port left to connect a keyboard; you are a disabled person with difficulty in typing on a real keyboard; or you are building a touchscreen-based web kiosk.
|
||||
|
||||
On-screen keyboard can also be a protection mechanism against a hardware keylogger which silently records your keystrokes for sensitive information such as passwords. Some online banking sites actually force you to use a virtual keyboard for security-enhanced transactions.
|
||||
|
||||
In Linux environment, there are a couple of open-source virtual keyboard software available, e.g., [GOK (GNOME Onscreen Keyboard)][1], [kvkbd][2], [onboard][3], [Florence][4].
|
||||
|
||||
In this tutorial, I am going to focus on Florence, and show you **how to set up a virtual keyboard with Florence.**. Florence comes with a number of nice features such as flexible layout, multiple input methods, auto-hide, etc. As part of the tutorial, I will also demonstrate **how to use Ubuntu desktop with a mouse only**.
|
||||
|
||||
### Install Florence Virtual Keyboard on Linux ###
|
||||
|
||||
Fortunately, Florence is available on base repositories of most Linux distros.
|
||||
|
||||
On Debian, Ubuntu or Linux Mint:
|
||||
|
||||
$ sudo apt-get install florence
|
||||
|
||||
On Fedora, CentOS or RHEL ([EPEL repo][5] is required for CentOS/RHEL):
|
||||
|
||||
$ sudo yum install florence
|
||||
|
||||
On Mandriva or Mageia:
|
||||
|
||||
$ sudo urpmi florence
|
||||
|
||||
For Archlinux users, the package is available in [AUR][6].
|
||||
|
||||
Configure and Launch Virtual Keyboard
|
||||
|
||||
Once you install Florence, you can launch virtual keyboard simply by typing:
|
||||
|
||||
$ florence
|
||||
|
||||
By default, the virtual keyboard is always on top of other windows, allowing you to type on any active window easily.
|
||||
|
||||
To change default settings of Florence, click on tool key on the left side of the keyboard.
|
||||
|
||||
![](https://farm4.staticflickr.com/3923/14873468448_216c794244_z.jpg)
|
||||
|
||||
In "style" menu of Florence settings, you can customize keyboard style, and enable/disable sound effect.
|
||||
|
||||
![](https://farm6.staticflickr.com/5563/14873470478_de81aac39b_o.png)
|
||||
|
||||
In "window" menu, you can adjust keyboard background transparency and key opacity, as well as control keyboard ratio, taskbar, resizability and always-on-top features. Transparency and opacity adjustment can be useful if your screen resolution is not high enough, so the virtual keyboard is blocking other windows. In this example, I switch to transparent keyboard, and set opacity to 50%.
|
||||
|
||||
![](https://farm6.staticflickr.com/5556/15060050245_1534127d1c_z.jpg)
|
||||
|
||||
In "behaviour" menu, you can change an input method. Florence supports several different input methods: mouse, touch screen, timer and ramble. The default input is mouse method. The last two methods do not require button clicks. With timer method, key press is triggered by locating a pointer at the key for a certain amount of time. The ramble method works similar to **timer** input, but with dexterity and training, can type much faster than **timer** method.
|
||||
|
||||
![](https://farm4.staticflickr.com/3843/14873384900_82baef4c22_o.png)
|
||||
|
||||
In "layout" menu, you can change the keyboard layout. For example, you can extend the keyboard layout to include navigation keys, numeric keys, and function keys.
|
||||
|
||||
![](https://farm6.staticflickr.com/5556/15057015461_e611b6ee25_z.jpg)
|
||||
|
||||
### Use Ubuntu Desktop with Mouse Only ###
|
||||
|
||||
I am going to demonstrate how to integrate Florence with Ubuntu desktop, so that we can access the desktop without a hardware keyboard. While this tutorial is specific to Ubuntu desktop with LightDM (Ubuntu's default display manager), a similar environment can be set up for other desktop environments.
|
||||
|
||||
The initial setup requires a hardware keyboard, but once the setup is completed, you only need a mouse, but not the keyboard.
|
||||
|
||||
When you boot up Ubuntu desktop, the boot procedure ends with launch of a display manager (or login manager) with Greeter interface, where you type in your login info. By default, Ubuntu desktop uses LightDM with Unity Greeter interface. Without a hardware keyboard, you cannot enter username and password at the login screen.
|
||||
|
||||
To be able to launch a virtual keyboard at the login screen, install GTK+ Greeter, which comes with on-screen keyboard support.
|
||||
|
||||
$ sudo apt-get install lightdm-gtk-greeter
|
||||
|
||||
Then, open a Greeter configuration file (/etc/lightdm/lightdm-gtk-greeter.conf) with a text editor, and specify Florence as an on-screen keyboard to use. Instead of Florence, you could also use onboard, Ubuntu's default on-screen keyboard.
|
||||
|
||||
$ sudo vi /etc/lightdm/lightdm-gtk-greeter.conf
|
||||
|
||||
----------
|
||||
|
||||
[greeter]
|
||||
keyboard=florence --no-gnome --focus &
|
||||
|
||||
![](https://farm6.staticflickr.com/5554/15056999361_180dc724b2_z.jpg)
|
||||
|
||||
Let's reboot Ubuntu desktop, and verify whether you can use virtual keyboard at the login screen.
|
||||
|
||||
When you see the GTK+ Greeter's login screen after boot, click on a human symbol icon on the top right corner. You will see "On Screen Keyboard" menu option as follows.
|
||||
|
||||
![](https://farm6.staticflickr.com/5554/14873314399_e48bd6eb84_z.jpg)
|
||||
|
||||
Click on this option, and a virtual keyboard will pop up on the login screen. Now you should be able to log in by tapping on the on-screen keyboard.
|
||||
|
||||
![](https://farm6.staticflickr.com/5572/14873460568_02480cccb7_z.jpg)
|
||||
|
||||
For those GDM2/GDM3 users, the Florence official site offers [documentation][7] on using virtual keyboard at GDM2/GDM3 screen.
|
||||
|
||||
The last step to make our Ubuntu desktop fully keyboard-less is to have virtual keyboard auto-start upon login, so that we can use our desktop without a hardware keyboard even after logging in. For that, create the following desktop file.
|
||||
|
||||
$ mkdir -p ~/.config/autostart
|
||||
$ vi ~/.config/autostart/florence.desktop
|
||||
|
||||
----------
|
||||
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Virtual Keyboard
|
||||
Comment=Auto-start virtual keyboard
|
||||
Exec=florence --no-gnome
|
||||
|
||||
This will make virtual keyboard appear as soon as you log in to the desktop.
|
||||
|
||||
![](https://farm4.staticflickr.com/3873/15037038376_f8359f3a65_z.jpg)
|
||||
|
||||
Hope this tutorial is useful to you. As you can see, Florence is quite powerful virtual keyboard which can be used for different purposes. Let me know if you have any use case for virtual keyboard.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/2014/08/onscreen-virtual-keyboard-linux.html
|
||||
|
||||
作者:[Dan Nanni][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://xmodulo.com/author/nanni
|
||||
[1]:https://developer.gnome.org/gok/
|
||||
[2]:http://homepage3.nifty.com/tsato/xvkbd/
|
||||
[3]:https://launchpad.net/onboard
|
||||
[4]:http://florence.sourceforge.net/
|
||||
[5]:http://xmodulo.com/2013/03/how-to-set-up-epel-repository-on-centos.html
|
||||
[6]:https://aur.archlinux.org/packages/florence/
|
||||
[7]:http://florence.sourceforge.net/english/how-to.html
|
@ -1,3 +1,4 @@
|
||||
Translating by JonathanKang
|
||||
How to Install and Setup ‘My Weather Indicator’ in Ubuntu 14.10
|
||||
================================================================================
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/my-weather-indicator.jpg)
|
||||
@ -23,7 +24,7 @@ To ensure you’re always kept up-to-date with the latest release I recommend ad
|
||||
How? **Open a new Terminal** window (Unity Dash > Terminal, or press Ctrl+Alt+T) and **enter the following two commands carefully**, entering your system password when prompted:
|
||||
|
||||
sudo add-apt-repository ppa:atareao/atareao
|
||||
|
||||
|
||||
sudo apt-get update && sudo apt-get install my-weather-indicator
|
||||
|
||||
#### Setting Up My Weather Indicator ####
|
||||
@ -36,7 +37,7 @@ The first time you open the app the following Preferences window will open. From
|
||||
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/Screen-Shot-2014-10-27-at-17.39.07.jpeg)
|
||||
|
||||
If you’re travelling (or in need of some small talk fodder) **you can monitor a second locale**, too. This is set up in the same way as the first but in the ‘Second Location’ tab.
|
||||
If you’re travelling (or in need of some small talk fodder) **you can monitor a second locale**, too. This is set up in the same way as the first but in the ‘Second Location’ tab.
|
||||
|
||||
Checking the ‘**Show Widget**’ box in the “**Widget Options**” section adds a small forecast desklet to your desktop. There are a number of different skins included, so be sure to play around to find the one you like the most (note: widget changes are applied on clicking ‘Ok’).
|
||||
|
||||
@ -72,4 +73,4 @@ via: http://www.omgubuntu.co.uk/2014/10/install-weather-indicator-ubuntu-14-10
|
||||
[2]:https://launchpad.net/my-weather-indicator
|
||||
[3]:https://launchpad.net/~atareao/+archive/ubuntu/atareao
|
||||
[4]:http://openweathermap.org/
|
||||
[5]:http://www.omgubuntu.co.uk/2014/02/get-weather-forecast-terminal-linux
|
||||
[5]:http://www.omgubuntu.co.uk/2014/02/get-weather-forecast-terminal-linux
|
||||
|
@ -1,3 +1,4 @@
|
||||
[felixonmars translating...]
|
||||
How To Use Emoji Anywhere With Twitter's Open Source Library
|
||||
================================================================================
|
||||
> Embed them in webpages and other projects via GitHub.
|
||||
@ -88,4 +89,4 @@ via: http://readwrite.com/2014/11/12/how-to-use-emoji-in-the-browser-window
|
||||
[7]:http://ellekasai.github.io/twemoji-awesome/
|
||||
[8]:https://github.com/ellekasai/twemoji-awesome/blob/gh-pages/twemoji-awesome.css
|
||||
[9]:https://github.com/laurenorsini/Emoji-Everywhere
|
||||
[10]:http://getemoji.com/
|
||||
[10]:http://getemoji.com/
|
||||
|
@ -1,4 +1,4 @@
|
||||
(translating by runningwater)
|
||||
Translating by ZTinoZ
|
||||
10 SCP Commands to Transfer Files/Folders in Linux
|
||||
================================================================================
|
||||
Linux administrator should be familiar with **CLI** environment. Since **GUI** mode in Linux servers is not a common to be installed. **SSH** may the most popular protocol to enable Linux administrator to manage the servers via remote in secure way. Built-in with **SSH** command there is **SCP** command. **SCP** is used to copy file(s) between servers in secure way.
|
||||
@ -231,9 +231,9 @@ That’s all about **SCP**. You can see **man pages** of **SCP** for more detail
|
||||
via: http://www.tecmint.com/scp-commands-examples/
|
||||
|
||||
作者:[Pungki Arianto][a]
|
||||
译者:[runningwater](https://github.com/runningwater)
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://www.tecmint.com/author/pungkiarianto/
|
||||
[a]:http://www.tecmint.com/author/pungkiarianto/
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user