2014年3月

苹果公司创始人史蒂芬乔布斯曾为 Linux 和 Git 这两个伟大的开源项目创始人托瓦兹提供工作。托瓦兹从未见过微软公司的比尔盖茨,但却在2000年的时候遇上了乔布斯。那时候的他任职于美国半导体设计公司全美达(Transmeta)。乔布斯邀请托瓦兹去位于库比蒂诺的苹果总部工作,为他提供丰厚的薪水和优越的职位,但是他在苹果的工作却是与Linux无关的。正是由于这个原因托瓦兹拒绝了乔布斯的邀请。况且,托瓦兹根本就不喜欢苹果操作系统的内核Mach。

Linus Torvalds

如果托瓦兹接受了邀请会怎么样?

在那个时候如果托瓦兹答应乔布斯去苹果工作,那现在的世界将会不一样。我们不会有 Linux,Kindle 和 Android。互联网上一半以上的内容和超过九成的服务器都将不复存在。毫不夸张的说,世界绝不可能是现在这个样子。

托瓦兹拒绝乔布斯的负面影响有哪些?

原本我们可以看到托瓦兹和乔布斯两个天才在一起工作。或许世界也将从他们俩的合作中获益。但可以肯定的是,我们将冒着失去 Linux 的风险。

托瓦兹为自己代言

有时候,托瓦兹由于他那些极具争议的言论而显得傲慢。但这与他对世界的贡献是不相符的。他创造了 Linux 和 Git 两个极好的开源项目,并使他们自由免费。有许多攻讦托瓦兹的言论说他从没有拿出他的部分收入来改善这个世界。但事实上,托瓦兹对于他人贡献是难以想象的。托瓦兹将他最完美的作品变成免费。而他本可以从中获得数以亿计的收入。他将他所拥有的一切无私平等地奉献给了整个世界。

托瓦兹作为一个普通人

Linux 内核的总设计师是一个很好又有趣的人。他谈论着世界的各个方面。他的博客涉及孩子、万圣节和祖国等方方面面。你可以通过博客和 G+ 来关注他。

关注托瓦兹的博客

关注托瓦兹的G+

托瓦兹鲜为人知之事

  • 年薪:1000万美元
  • 身价:15亿美元
  • 版本控制系统RCS,Git和Linux内核的创始人。
  • 托瓦兹更乐于使用开源软件,但他从不介意通过商业软件来获得最佳的效果。
  • 在2008年和2012年的采访中,托瓦兹表示自己喜欢使用 Fedora 系统是由于 Fedora 对于 PowerPC 系列处理器的良好支持。
  • 由于 Linux 基金会的赞助,托瓦兹可以全身心地投入到Linux的开发中去。

托瓦兹的至理名言

托瓦兹说过的一些话.

引用

“托瓦兹不戴眼镜,他已经把 X11 系统当作了他的眼镜,所以他不再需要眼镜。”

“当你说,我写了一款摧毁 Windows 的软件,人们只会一脸茫然地对你说,我已经在使用这款免费的软件。”

“只有懦夫才使用磁盘来维护备份的文件,强者将文件上传至公共的 FTP 服务器让所有人来下载。”

“你看,为了写出 Linux 这样的系统,你不仅需要是一位好的程序员,还要是一个狡猾的坏蛋。”

名言

“让 Linux 在 GPL 协议下自由发展是我做的过最精彩的事。”

结论

有些人认为,如果托瓦兹没有创造出 Linux,其他人也可能创造出类似的系统。例如“米歇尔”也许会写出一款叫做“Michel”的操作系统。说这些并不是让我们低估托瓦兹的能力,牺牲以及他所作的贡献。

托瓦兹是一个救世主、极客、开发者、美国宇航局研究实验室的管理、白帽子黑客等其他托瓦兹所做过的职业。托瓦兹的优越感对于他自己而言没有任何问题。世界也会感谢他的。

这是全部了,我会再次和大家见面并带来你们喜欢的文章。请在下面的评论区分享你们宝贵的意见。


via: http://www.tecmint.com/what-if-linus-torvalds-would-have-accepted-job-proposal-of-steve-jobs/

译者:YangYuxiang 校对:Caroline

本文由 LCTT 原创翻译,Linux中国 荣誉推出

在最后期限的一个星期前, Ubuntu 14.04壁纸大赛收到了惊人的提交,人人都抢着争做Ubuntu的默认安装图片

在三月上旬在面板上选择他们的最爱之前,我已经自己整个翻找了一遍。

下面这些突出的选择是否会被选中进入Trusty Tahr是题外话;这些都是一些精彩的截图值得放在任何人的桌面上。

1. boat2

Christos Kyriazidis 的 boat2

2. 雾中日出

Brian Fox的雾中日出

3. IMGP8932

Eduardo Diez Viñuela的IMGP8832

4. 旅行

Goldenfox的旅行

5. 翠鸟

Gilberto Fotos的翠鸟

最好的猫作品

作为我们的一个传统,我们同样突出了一个猫主题的提交。为什么?因为猫太酷了,呦!值得庆幸的是(是的,在可爱的小猫之间选择总是很困难的)这是今年仅有的一张猫科动物作品。

Hjalte Nielsen的棕色的猫

但是谁在乎我们这里的惊讶!-作品池里的哪幅作品你希望成为默认图片?


via: http://www.omgubuntu.co.uk/2014/02/ubuntu-14-04-wallpaper-picks

译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Vim (Vi IMproved)是一款在程序员之间非常受欢迎的文本编辑器。它在执行不同的快捷命令操作上有它自己的特长。

从Vim访问剪切板

比如,要拷贝高亮的文本,我们使用‘y’命令,并用‘x’来剪切。但是,vim(不是gVim)剪切板的内容默认情况下是不能被其他的vim实例访问的。

Vim版本信息中使用‘+’表示启用了系统剪切板。你可以运行‘vim ­­–version’,如果你看不到像“+xterm\_clipboard”而是显示“­xterm\_clipboard“,那么会使用内部剪切板,其将不能被其它的vim实例访问。

安装gvim和parcellite

为了访问vim剪切板的内容,你需要安装gvim包。gVim是vim编辑器的GUI模式,它的剪切板选项默认启用。

# yum install -y gvim

然后,使用RPMForge 仓库安装parcellite 包。Parcellite是一款轻量级,小巧而免费的Linux剪切板管理工具。

# yum install -y parcellite

一旦安装后,运行下面的命令。这里的参数‘&’是使parcellite以后台进程运行。

# parcellite &

检查选项已经在gvim中启用。

# gvim --version

确保“+xterm\_clipboard”选项显示在下面的输出中。

VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Apr  5 2012 10:12:08)
Included patches: 1-411
Modified by <[email protected]>
Compiled by <[email protected]>
Huge version with GTK2 GUI.  Features included (+) or not (-):
+arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent 
+clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments 
+cryptv +cscope +cursorshape +dialog_con_gui +diff +digraphs +dnd -ebcdic 
+emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path 
+float +folding -footer +fork() +gettext -hangul_input +iconv +insert_expand 
+jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap 
+menu +mksession +modify_fname +mouse +mouseshape +mouse_dec +mouse_gpm 
-mouse_jsbterm +mouse_netterm -mouse_sysmouse +mouse_xterm +multi_byte 
+multi_lang -mzscheme +netbeans_intg -osfiletype +path_extra +perl +postscript 
+printer +profile +python +quickfix +reltime +rightleft -ruby +scrollbind 
+signs +smartindent -sniff +startuptime +statusline -sun_workshop +syntax 
+tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse 
+textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual 
+visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup 
+X11 -xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save

打开用户的.bashrc文件。

# vim ~/.bashrc

加入别名并保存文件(按下‘i’来插入行并按下ESC,接着运行:wq来保存并退出)。

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias vim='gvim -v'
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

这个alias是内置的用于将一些命令绕到其他命令上。这样每次当vim命令运行时,相应的别名会启动默认带剪切板的gVim。

现在,用类似的方式编辑你的‘.vimrc’文件(以防你没有 .vimrc文件,生成这样一个文件然后再回来)。

# vim ~/.vimrc

追加下面这行并保存文件。

autocmd VimLeave * call system("echo -n $'" . escape(getreg(), "'") . "' | xsel -ib")

现在在vim中打开任何文件并高亮部分文本(使用'v'命令)并按下'y'。尝试在vim外面的任何地方粘帖(关不关vim都行),你就发现vim里面复制的内容被粘帖出来了。

附:生成 .vimrc 文件

运行下面的命令来生成.vimrc文件(如果你已做了就跳过这部分)。

# cd   [返回到你的主目录]       
# vim .vimrc

在vim中在按下ESC键后运行下面的命令(在vim中,每个命令是在按下ESC键后也就是带你进入命令模式后运行的)。

:r $VIMRUNTIME/vimrc_example.vim 
:w

via: http://www.tecmint.com/accessing-clipboard-contents-across-multiple-instances-of-vim-from-terminal/

译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

我们可能在 Linux 下运用 touch 命令创建一个空文件。当然我们也可以使用其他命令例如 vi, nano 或是任意一个编辑工具来实现。但是你可能需要更多的步骤来完成操作。其实你要知道 touch 命令的主要功能并不是为了创建一个空文件哦。

什么是 touch 命令

众所周知,每个文件都被附有时间戳。这个时间戳记包括访问时间和修改时间。而 Touch 命令主要就是用来修改文件的访问时间和修改时间。

为什么我们需要使用 touch 命令

既然 touch 命令描述的是改变时间戳,那么我们可能会想为什么我们需要去改变时间戳呢?这个问题会引发我们的深思。然而,我想有个理由可以解释为什么我们需要使用它。如果你参加了一个全球范围的开源项目,那么时间戳可能变得很重要。编译源代码文件可能需要同一地区的时间戳。如果未统一,程序可能会编译失败。(译注:有强迫症的同学也很喜欢这个命令——就看不得乱七八糟的时间,;>)

不带任何选项下运行 touch

最简单的使用 touch 命令。只需键入:

$ touch file_name

请观察下面的一张截图。

Touch command

File\_1.txt原来的时间戳是 12:42。在我们使用 touch 命令后,它改变为了 17:08。由此看出,默认情况下,touch 会将文件的时间戳改为当前时间。

只改变访问时间

正如我们之前提到的,每个文件都附有访问时间和修改时间。上面的时间戳是 17:08。我们可以看更多的细节。

Detail timestamp

我们发现访问时间和修改时间的值是相同的都是 17:08:35 ,还有它们属于同一时区 GMT +7。

如果现在我们要只改变访问时间,我们需要使用-a选项。

$ touch -a file_1.txt

Touch -a option

如你所见,访问时间变为了 17:51:37 ,但是修改时间仍为17:08:35。[译注:原文为 Change time(状态改变时间)应是作者笔误]

只改变修改时间

我们可以使用-m选项来实现。现在我们用file\_2.txt作个示例。

File_2.txt detail timestamp

$ touch -m file_2.txt

Touch -m option

现在修改时间从 12:42:20 改为了 17:57:20。请注意,当文件被访问或修改时,状态改变时间域的值总会对其记录。

更改为自定义时间戳

-a-m选项都会将文件的时间戳改为现在当前时间。当然我们也可以更改为自定义时间戳。使用-t选项实现。

从上面示例示例中的 file\_2.txt,我们看出它的时间戳是:

访问时间:12:42:20
修改时间:17:57:20
执行日期:2014-01-14

假如我们想要将访问时间和修改时间改为2014年1月12日 09:58:27。我们可以用下列命令来完成:

$ touch -t 201401120958.27 file_2.txt

Touch using -t option

-t 选项语法组成 :

[[CC]YY]MMDDhhmm [.SS]

CC - 年份的前两位 
YY - 年份的后两位 
MM - 月份 [01-12]
DD - 日期 [01-31]
hh - 时 [00-23]
mm - 分 [00-59]
SS - 秒 [00-61]

改变日期和时间的另一种方式

如果你觉得[[CC]YY]MMDDhhmm [.SS]格式不适合你,我们也可以使用 -d 选项。下面是-d选项使用的一个示例。

更改指定日期

举例来说,我们有个名为 file\_3.txt 的文件,它的相关属性在下面的截图中展示了。

File_3.txt detail timestamp

现在我们要将日期2014年1月14日改为2013年12月20日。可以使用下列命令:

$ touch -d '10-December-2013' file_3.txt

Change date using -d option

不出意料,访问时间和修改时间的日期已经改为了2013年12月10日。

改变时区

如果我们想改变指定GMT的时间,我们也可以使用-d选项。先让file\_3.txt 移回当前时间。

$ touch file_3.txt

Reset file_3.txt timestamp

不难发现 file\_3.txt 的时区为 GMT +0700。要改为 GMT3 时区,我们只需要键入如下命令:

$ touch -d GMT3 file_3.txt

Change into GMT3 timezone

好的,现在时间已经改为了 10:00:00 AM。

结合参数下使用-d选项

还可以用很酷的方式使用-d选项。请观察下面的图片。

Change date using keyword

我们可以将单词 next Sunday 和 GMT 3合成一个值,而 touch 命令仍然能识别它。日期已经改为了2014年1月21日,而当前的日期为2014年1月14日。

还有另一个-d选项的示例。 首先,我们要将file3\_3.txt重置到当前日期和时间。

$ touch file_3.txt

Reset file_3.txt timestamp

然后我们尝试这个命令:

$ touch -d '1 year ago 13:43:07' file_3.txt

Change date using keyword

太震撼了,Touch 甚至能识别单词‘1 year ago’。现在的日期以及时间已经改为了2013年1月14日,13:43:07。

创建一个空文件

当你运行 touch 命令目标文件不存在时,touch 会创建一个同名的空文件。

$ touch file_10.txt

Create an empty file

同时创建多个文件

你可以用空格将目标文件分割开来,以此来创建多个文件。

$ touch doc_10.txt doc_20.txt doc_30.txt

Create multiple files

总结

如果你要处理关于文件或目录的时间戳问题,那么 Touch 会对你很有用的。一如既往得你也可以键入man touchtouch --help来显示帮助页面了解更多细节。


via: http://linoxide.com/linux-command/linux-touch-command/

译者:Luoxcat 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Linux Kernel 版本3.12.7主线已经发布了,而这篇简短教程将会向你展示怎样简单地在 Ubuntu 中升级。如果你正好运行 Ubuntu 13.10 或者更低版本,还碰巧你的系统还不是安装最新的内核,读完吧。

Linux Kernel 是 linux 操作系统的核心,包括了 Ubuntu。内核使 Ubuntu 可以与系统硬件(内存,CPU,设备等等)通信。内核管理资源并掌管你机器设备的所有重要部分。

没有 Linux Kernel, Ubuntu 只是一串幻想应用而不能连接硬件或者你机器所有的重要部分。这就是为什么Linux Kernel 如此的重要。

为什么升级你的 Ubuntu Kernel?

在升级你的系统内核之前,第一件需要知道的事情就是升级可能会破坏你的系统,使它无法使用。事实上,并不推荐你自己升级内核。Ubuntu 的总公司 Canonical 在 Ubuntu 内核升级上做得很好。

在新版本发布之前,他们测试并且确定内核的安装是兼容的。所以,如果你的设备工作良好,没有问题,你应该保持现有内核,不要升级。

另一方面,如果 Ubuntu 不能识别所有系统的元件或者你的设备功能不正确,升级 Linux kernel 也许会有帮助。

这是因为新的内核为你的新机器增加了新的驱动和功能。如果现在安装的内核不支持机器上的某些功能,你应该升级一下。

更多关于内核3.12.7,点这里阅读更新日志

现在升级 Linux Kernel

要想升级你的内核,运行下列命令来升级所有安装包和现存内核。

sudo apt-get update  
sudo apt-get dist-upgrade  
sudo apt-get autoremove

升级完成后,重启你的设备。在安装完系统包和内核后重启机器是一个好习惯。这样做是为了让新的内核能够被应用。

接下来,运行下列命令来下载 Linux Kernel 3.12.7

32位设备,运行下列命令

cd /tmp  
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12.7-trusty/linux-headers-3.12.7-031207-generic_3.12.7-031207.201401091657_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12.7-trusty/linux-headers-3.12.7-031207_3.12.7-031207.201401091657_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12.7-trusty/linux-image-3.12.7-031207-generic_3.12.7-031207.201401091657_i386.deb

64位设备,运行下列命令

cd /tmp  
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12.7-trusty/linux-headers-3.12.7-031207-generic_3.12.7-031207.201401091657_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12.7-trusty/linux-headers-3.12.7-031207_3.12.7-031207.201401091657_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12.7-trusty/linux-image-3.12.7-031207-generic_3.12.7-031207.201401091657_amd64.deb

下载你的系统对应版本后,运行下列命令

sudo dpkg -i *.deb

安装完成后,重启你的设备,如果一切都按照上面描述一样进展顺利,你的系统应该拥有了最新稳定的内核版本。

卸载内核3.12.7版本,使用下列命令

sudo apt-get remove linux-headers-3.12.7-* linux-image-3.13.7-*

好好享受吧!


via: http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-linux-kernel-3-12-7-released-heres-how-to-upgrade-in-ubuntu/

译者:Vic\_\_\_ 校对:Caroline

本文由 LCTT 原创翻译,Linux中国 荣誉推出

嗨,各位 Linux 极客们,

在这篇简短教程中,我会指导你们如何在你的 Linux 机器上安装 .bin 文件。并不是一些可怕的终端命令,我保证!但是我同样会展示如何在终端上操作 。

什么是 .bin 文件?

.bin 文件是在 Linux 和类 Unix 操作系统上的自执行文件。在执行 .bin 文件之前,你需要给它执行权限。这可以通过命令行或者 gui 完成。如果你喜欢用命令行那么打开一个新的终端并运行如下的命令来给予文件执行权限。

chmod +x filename.bin

接着用下面的命令执行。

./filename.bin

确保你在运行上面的命令的时候是超级用户。

那又如何从 gui 来完成呢?进入 .bin 文件的目录并点击鼠标右键,接着如下图所示进入属性。

选择 Permissions 并勾选 Allow executing file as a program

双击文件后它就会执行。这样就完成了。


via: http://www.unixmen.com/execute-bin-files-linux/

译者:geekpi 校对:Caroline

本文由 LCTT 原创翻译,Linux中国 荣誉推出