mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-25 23:11:02 +08:00
commit
3b87ab6c50
@ -1,24 +1,26 @@
|
||||
使用条块化I/O管理多个逻辑卷管理磁盘
|
||||
使用条块化I/O管理多个LVM磁盘(第五部分)
|
||||
================================================================================
|
||||
在本文中,我们将了解逻辑卷是如何通过条块化I/O来写入数据到磁盘的。逻辑卷管理的酷炫特性之一,就是它能通过条块化I/O跨多个磁盘写入数据。
|
||||
|
||||
![Manage LVM Disks Using Striping I/O](http://www.tecmint.com/wp-content/uploads/2014/09/LVM-Striping.jpeg)
|
||||
使用条块化I/O管理LVM磁盘
|
||||
|
||||
|
||||
### LVM条块化是什么? ###
|
||||
|
||||
**LVM条块化**是LVM功能之一,该技术会跨多个磁盘写入数据,而不是对单一物理卷持续写入。
|
||||
|
||||
![Manage LVM Disks Using Striping I/O](http://www.tecmint.com/wp-content/uploads/2014/09/LVM-Striping.jpeg)
|
||||
|
||||
*使用条块化I/O管理LVM磁盘*
|
||||
|
||||
|
||||
#### 条块化特性 ####
|
||||
|
||||
- 它会改善磁盘性能。
|
||||
- 挽救对单一磁盘的重复硬写入。
|
||||
- 避免对单一磁盘的不断的大量写入。
|
||||
- 使用对多个磁盘的条块化写入,可以减少磁盘填满的几率。
|
||||
|
||||
在逻辑卷管理中,如果我们需要创建一个逻辑卷,扩展的卷会完全映射到卷组和物理卷。在此种情形中,如果其中一个**PV**(物理卷)被填满,我们需要从其它物理卷中添加更多扩展。这样,添加更多扩展到PV中后,我们可以指定逻辑卷使用特定的物理卷写入I/O。
|
||||
|
||||
假设我们又**四个磁盘**驱动器,分别指向了四个物理卷,如果各个物理卷总计可以达到**100 I/O**,我们卷组就可以获得**400 I/O**。
|
||||
假设我们有**四个磁盘**驱动器,分别指向了四个物理卷,如果各个物理卷总计可以达到**100 I/O**,我们卷组就可以获得**400 I/O**。
|
||||
|
||||
如果我们不使用**条块化方法**,文件系统将横跨基础物理卷写入。例如,写入一些数据到物理卷达到100 I/O,这些数据只会写入到第一个PV(**sdb1**)。如果我们在写入时使用条块化选项创建逻辑卷,它会分割100 I/O分别写入到四个驱动器中,这就是说每个驱动器中都会接收到25 I/O。
|
||||
|
||||
@ -41,27 +43,31 @@
|
||||
# fdisk -l | grep sd
|
||||
|
||||
![List Hard Drives](http://www.tecmint.com/wp-content/uploads/2014/09/List-Hard-Drives.png)
|
||||
列出硬盘驱动器
|
||||
|
||||
现在,我们必须为这4个硬盘驱动器**sdb**,**sdc**,**sdd**和**sde**创建分区,我们将用‘**fdisk**’命令来完成该工作。要创建分区,请遵从本文**第一部分**中**步骤#4**的说明,并在创建分区时确保你已将类型修改为**LVM(8e)**。
|
||||
*列出硬盘驱动器*
|
||||
|
||||
现在,我们必须为这4个硬盘驱动器**sdb**,**sdc**,**sdd**和**sde**创建分区,我们将用‘**fdisk**’命令来完成该工作。要创建分区,请遵从本文**[第一部分][1]**中**步骤#4**的说明,并在创建分区时确保你已将类型修改为**LVM(8e)**。
|
||||
|
||||
# pvcreate /dev/sd[b-e]1 -v
|
||||
|
||||
![Create Physical Volumes in LVM](http://www.tecmint.com/wp-content/uploads/2014/09/Create-Physical-Volumes-in-LVM.png)
|
||||
在LVM中创建物理卷
|
||||
|
||||
*在LVM中创建物理卷*
|
||||
|
||||
PV创建完成后,你可以使用‘**pvs**’命令将它们列出来。
|
||||
|
||||
# pvs
|
||||
|
||||
![Verify Physical Volumes](http://www.tecmint.com/wp-content/uploads/2014/09/Verify-Physical-Volumes.png)
|
||||
验证物理卷
|
||||
|
||||
*验证物理卷*
|
||||
|
||||
现在,我们需要使用这4个物理卷来定义卷组。这里,我定义了一个物理扩展大小(PE)为**16MB**,名为**vg_strip**的卷组。
|
||||
|
||||
# vgcreate -s 16M vg_strip /dev/sd[b-e]1 -v
|
||||
|
||||
上面命令中选项的说明。
|
||||
上面命令中选项的说明:
|
||||
|
||||
- **[b-e]1** – 定义硬盘驱动器名称,如sdb1,sdc1,sdd1,sde1。
|
||||
- **-s** – 定义物理扩展大小。
|
||||
- **-v** – 详情。
|
||||
@ -71,14 +77,16 @@ PV创建完成后,你可以使用‘**pvs**’命令将它们列出来。
|
||||
# vgs vg_strip
|
||||
|
||||
![Verify Volume Group](http://www.tecmint.com/wp-content/uploads/2014/09/Verify-Volume-Group.png)
|
||||
验证卷组
|
||||
|
||||
*验证卷组*
|
||||
|
||||
要获取VG更详细的信息,可以在**vgdisplay**命令中使用‘-v’选项,它将给出**vg_strip**卷组中所使用的全部物理卷的详细情况。
|
||||
|
||||
# vgdisplay vg_strip -v
|
||||
|
||||
![Volume Group Information](http://www.tecmint.com/wp-content/uploads/2014/09/Volume-Group-Information.png)
|
||||
卷组信息
|
||||
|
||||
*卷组信息*
|
||||
|
||||
回到我们的话题,现在在创建逻辑卷时,我们需要定义条块化值,就是数据需要如何使用条块化方法来写入到我们的逻辑卷中。
|
||||
|
||||
@ -91,46 +99,54 @@ PV创建完成后,你可以使用‘**pvs**’命令将它们列出来。
|
||||
- **-i** –条块化
|
||||
|
||||
![Create Logical Volumes](http://www.tecmint.com/wp-content/uploads/2014/09/Create-Logical-Volumes.png)
|
||||
创建逻辑卷
|
||||
|
||||
*创建逻辑卷*
|
||||
|
||||
在上面的图片中,我们可以看到条块尺寸的默认大小为**64 KB**,如果我们需要自定义条块值,我们可以使用**-I**(大写I)。要确认逻辑卷已经是否已经创建,请使用以下命令。
|
||||
|
||||
# lvdisplay vg_strip/lv_tecmint_strp1
|
||||
|
||||
![Confirm Logical Volumes](http://www.tecmint.com/wp-content/uploads/2014/09/Confirm-Logical-Volumes.png)
|
||||
确认逻辑卷
|
||||
|
||||
*确认逻辑卷*
|
||||
|
||||
现在,接下来的问题是,我们怎样才能知道条块被写入到了4个驱动器。这里,我们可以使用‘**lvdisplay**’和**-m**(显示逻辑卷映射)命令来验证。
|
||||
|
||||
# lvdisplay vg_strip/lv_tecmint_strp1 -m
|
||||
|
||||
![Check Logical Volumes](http://www.tecmint.com/wp-content/uploads/2014/09/Check-Logical-Volumes.png)
|
||||
检查逻辑卷
|
||||
|
||||
*检查逻辑卷*
|
||||
|
||||
要创建自定义的条块尺寸,我们需要用我们自定义的条块大小**256KB**来创建一个**1GB**大小的逻辑卷。现在,我打算将条块分布到3个PV上。这里,我们可以定义我们想要哪些pv条块化。
|
||||
|
||||
# lvcreate -L 1G -i3 -I 256 -n lv_tecmint_strp2 vg_strip /dev/sdb1 /dev/sdc1 /dev/sdd1
|
||||
|
||||
![Define Stripe Size](http://www.tecmint.com/wp-content/uploads/2014/09/Define-Stripe-Size.png)
|
||||
定义条块大小
|
||||
|
||||
*定义条块大小*
|
||||
|
||||
接下来,检查条块大小和条块化的卷。
|
||||
|
||||
# lvdisplay vg_strip/lv_tecmint_strp2 -m
|
||||
|
||||
![Check Stripe Size](http://www.tecmint.com/wp-content/uploads/2014/09/Check-Stripe-Size.png)
|
||||
检查条块大小
|
||||
|
||||
*检查条块大小*
|
||||
|
||||
是时候使用设备映射了,我们使用‘**dmsetup**’命令来完成这项工作。它是一个低级别的逻辑卷管理工具,它用于管理使用了设备映射驱动的逻辑设备。
|
||||
|
||||
# dmsetup deps /dev/vg_strip/lv_tecmint_strp[1-2]
|
||||
|
||||
![Device Mapper](http://www.tecmint.com/wp-content/uploads/2014/09/Device-Mapper.png)
|
||||
设备映射
|
||||
|
||||
*设备映射*
|
||||
|
||||
这里,我们可以看到strp1依赖于4个驱动器,strp2依赖于3个设备。
|
||||
|
||||
希望你已经明白,我们怎样能让逻辑卷条块化来写入数据。对于此项设置,必须掌握逻辑卷管理基础知识。在我的下一篇文章中,我将给大家展示怎样在逻辑卷管理中迁移数据。到那时,请静候更新。同时,别忘了对本文提出有价值的建议。
|
||||
希望你已经明白,我们怎样能让逻辑卷条块化来写入数据。对于此项设置,必须掌握逻辑卷管理基础知识。
|
||||
|
||||
在我的下一篇文章中,我将给大家展示怎样在逻辑卷管理中迁移数据。到那时,请静候更新。同时,别忘了对本文提出有价值的建议。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -138,8 +154,9 @@ via: http://www.tecmint.com/manage-multiple-lvm-disks-using-striping-io/
|
||||
|
||||
作者:[Babin Lonston][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/) 荣誉推出
|
||||
|
||||
[a]:http://www.tecmint.com/author/babinlonston/
|
||||
[1]:http://linux.cn/article-3965-1.html
|
@ -1,4 +1,4 @@
|
||||
在Linux上使用smartmontools查看硬盘的健康状态
|
||||
使用 smartmontools 查看硬盘的健康状态
|
||||
================================================================================
|
||||
要说Linux用户最不愿意看到的事情,莫过于在毫无警告的情况下发现硬盘崩溃了。诸如[RAID][2]的[备份][1]和存储技术可以在任何时候帮用户恢复数据,但为预防硬件突然崩溃造成数据丢失所花费的代价却是相当可观的,特别是在用户从来没有提前考虑过在这些情况下的应对措施时。
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
|
||||
![](https://farm4.staticflickr.com/3953/15352881249_96c09f7ccc_o.png)
|
||||
|
||||
其中sdx代表分配给机器上对应硬盘上的设备名。
|
||||
其中sdX代表分配给机器上对应硬盘上的设备名。
|
||||
|
||||
如果想要显示出某个指定硬盘的信息(比如设备模式、S/N、固件版本、大小、ATA版本/修订号、SMART功能的可用性和状态),在运行smartctl命令时添加"--info"选项,并按如下所示指定硬盘的设备名。
|
||||
|
||||
@ -67,8 +67,8 @@
|
||||
- **THRESH**:在报告硬盘FAILED状态前,WORST可以允许的最小值。
|
||||
- **TYPE**:属性的类型(Pre-fail或Old_age)。Pre-fail类型的属性可被看成一个关键属性,表示参与磁盘的整体SMART健康评估(PASSED/FAILED)。如果任何Pre-fail类型的属性故障,那么可视为磁盘将要发生故障。另一方面,Old_age类型的属性可被看成一个非关键的属性(如正常的磁盘磨损),表示不会使磁盘本身发生故障。
|
||||
- **UPDATED**:表示属性的更新频率。Offline代表磁盘上执行离线测试的时间。
|
||||
- **WHEN_FAILED**:如果VALUE小于等于THRESH,会被设置成“FAILING_NOW”;如果WORST小于等于THRESH会被设置成“In_the_past”;如果都不是,会被设置成“-”。在“FAILING_NOW”情况下,需要备份重要文件ASAP,特别是属性是Pre-fail类型时。“In_the_past”代表属性已经故障了,但在运行测试的时候没问题。“-”代表这个属性从没故障过。
|
||||
- **RAW_VALUE**:制造商定义的原始值,从VALUE派生。
|
||||
- **WHEN\_FAILED**:如果VALUE小于等于THRESH,会被设置成“FAILING\_NOW”;如果WORST小于等于THRESH会被设置成“In\_the\_past”;如果都不是,会被设置成“-”。在“FAILING\_NOW”情况下,需要尽快备份重要文件,特别是属性是Pre-fail类型时。“In\_the\_past”代表属性已经故障了,但在运行测试的时候没问题。“-”代表这个属性从没故障过。
|
||||
- **RAW\_VALUE**:制造商定义的原始值,从VALUE派生。
|
||||
|
||||
这时候你可能会想,“是的,smartctl看起来是个不错的工具,但我更想知道如何避免手动运行的麻烦。”如果能够以指定的间隔运行,同时又能通知我测试结果,那不是更好吗?”
|
||||
|
||||
@ -134,7 +134,7 @@ via: http://xmodulo.com/check-hard-disk-health-linux-smartmontools.html
|
||||
|
||||
作者:[Gabriel Cánepa][a]
|
||||
译者:[KayGuoWhu](https://github.com/KayGuoWhu)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
548
published/20141204 Readers' Choice Awards 2014--Linux Journal.md
Normal file
548
published/20141204 Readers' Choice Awards 2014--Linux Journal.md
Normal file
@ -0,0 +1,548 @@
|
||||
Linux Journal杂志2014读者选择奖
|
||||
================================================================================
|
||||
又到了Linux Journal杂志刊发2014读者选择奖的时候了!鉴于去年的形式好评如潮,因此我们仍沿续旧年格式,让你的意见再次得到回响。虽然有些地方我们会稍加评论,不过基本上还是以报道结果为主。以下敬请欣赏本年度读者选择奖名单!
|
||||
|
||||
我们希望读者选择奖一年好似一年。如果你对新分类有任何建议,或者有任何评价与反馈,都可以通过以下方式联系我们:[http://www.linuxjournal.com/contact][1]
|
||||
|
||||
如欲了解完整获奖名单,请查阅本杂志2014年12月刊。
|
||||
|
||||
### 最佳Linux发行版 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f1.jpg)
|
||||
|
||||
虽然本年度基于Debian/Ubuntu的发行版获得最多票数,但“最佳Linux发行版”分类有点类似于“最好吃的比萨”--就算得票垫底,但它仍算是比萨呀!选择Linux不会错的,而投票之五花八门,恰恰呈现出开源世界里的选择多样性。
|
||||
|
||||
- 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%
|
||||
- 其它 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%
|
||||
|
||||
|
||||
### 最佳Linux移动系统 ###
|
||||
|
||||
安卓在移动领域是如此的举足轻重,所以我们决定让安卓的各种版本独立参与投票。因此,尽管以下系统本质上属于安卓,但我们仍沿用其名而不改称安卓,因为这样更加一目了然。
|
||||
|
||||
- Stock Android 37.1%
|
||||
- Sailfish OS 27.6%
|
||||
- CyanogenMod 20.2%
|
||||
- 其它 3%
|
||||
- Ubuntu Phone 3%
|
||||
- Amazon Fire OS 1.5%
|
||||
- Ubuntu for Android 1.4%
|
||||
- Replicant .8%
|
||||
- Tizen .8%
|
||||
|
||||
### 最佳Linux智能手机厂商 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f3.jpg)
|
||||
|
||||
- Samsung 29%
|
||||
- Jolla 26.7%
|
||||
- Nexus 16.5%
|
||||
- 其它 7.1%*
|
||||
- HTC 7%
|
||||
- LG 5.3%
|
||||
- Sony 3.7%
|
||||
- Nokia 1.8%
|
||||
- Huawei 1.4%
|
||||
- GeeksPhone 1%
|
||||
- Amazon .6%
|
||||
|
||||
*在"其它"当中,摩托罗拉获得最多提名,其次是一加。
|
||||
|
||||
### 最佳Linux平板 ###
|
||||
|
||||
![](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%
|
||||
- 其它 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%
|
||||
|
||||
|
||||
### 最佳基于Linux的其它配件(不含智能手机或平板)###
|
||||
|
||||
我们是一群树莓派粉,如假包换!不过说真的,这怎么能怪我们呢?树莓派又出了新款B+,让原本就美妙绝伦的树莓派愈发的标致可人。并非我有未卜先知之功,但我对明年的冠军早就心中有数了。
|
||||
|
||||
- Raspberry Pi 71.4%
|
||||
- BeagleBone Black 8.1%
|
||||
- 其它 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%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多是Odroid与CuBox。
|
||||
|
||||
### 最佳笔记本厂商 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/lenovo.jpg)
|
||||
|
||||
本分类原本用于评价哪个厂商对Linux最花心思,不过谢天谢地,如今大多数笔记本运行起Linux来还是相当不错的。因此无需我们将重点放在“嗯,这台能运行Linux”这种问题上面,而可以切切实实地看到精华之作。把眼光放长远些。
|
||||
|
||||
- Lenovo 32%
|
||||
- ASUS 19.3%
|
||||
- Dell 18.5%
|
||||
- System76 10.6%
|
||||
- 其它 7.9%*
|
||||
- Acer 4.5%
|
||||
- ThinkPenguin 1.9%
|
||||
- LinuxCertified 1.8%
|
||||
- ZaReason 1.6%
|
||||
- EmperorLinux 1.5%
|
||||
- CyberPower .3%
|
||||
- Eurocom .1%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多的(依次)是运行Linux的苹果、惠普、东芝以及三星。
|
||||
|
||||
### 最佳内容管理系统 ###
|
||||
|
||||
![](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%
|
||||
- 其它 10%*
|
||||
- Alfresco 4.3%
|
||||
- WebGUI 1.3%
|
||||
- ikiwiki 1.1%
|
||||
- eZ publish .7%
|
||||
- Wolf CMS .4%
|
||||
- Elgg .3%
|
||||
- Blosxom .2%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多的(依次)是DokuWiki, Plone, Django 以及 Typo3。
|
||||
|
||||
### 最佳对Linux友好的虚拟主机公司 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/question.jpg)
|
||||
|
||||
提到虚拟主机,这年头要找到不对Linux友好的公司那是相当之难。事实上,要找到一家提供Windows的主机服务商才是一种挑战。这一类别的冠军(“其它”)就显而易见的说明了这一问题,或许设一个“最差虚拟主机”分类更加有用!
|
||||
|
||||
- 其它 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%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多的(依次)是Digital Ocean (压倒性优势), Hetzner, BlueHost 以及 WebFaction。
|
||||
|
||||
### 最佳浏览器 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f7.jpg)
|
||||
|
||||
Firefox显著优势拨得今年的头筹。即使以Chrome加Chromium计算,Firefox仍位居榜首。我们曾经担心,Firefox死忠会悄然流失,不过还好,Firefox依然宝马未老,仍是一款快速、可行以及兼容度极佳的浏览器。
|
||||
|
||||
- Firefox 53.8%
|
||||
- Chrome 26.9%
|
||||
- Chromium 8.1%
|
||||
- Iceweasel 4%
|
||||
- Opera 3%
|
||||
- 其它 2%
|
||||
- SeaMonkey .8%
|
||||
- rekonq .5%
|
||||
- dwb .4%
|
||||
- QupZill .4%
|
||||
- Dillo .2%
|
||||
|
||||
|
||||
### 最佳电邮客户端###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f8.jpg)
|
||||
|
||||
如果我没有亲身了解到身边有多少铁杆极客粉的话,我也许会指责Kyle Rankin投票有作弊嫌疑。他的最爱--Mutt电邮客户端并未登顶,但是对于一个没有图形界面的程序来说,获得第三名也算是个比较骄人的成绩了。
|
||||
|
||||
- Mozilla Thunderbird 44.4%
|
||||
- Gmail 24.7%
|
||||
- Mutt 6.8%
|
||||
- Evolution 5.5%
|
||||
- KMail 5.3%
|
||||
- 其它 3.2%
|
||||
- Claws Mail 2.2%
|
||||
- Zimbra 2%
|
||||
- Alpine 1.8%
|
||||
- Geary 1.7%
|
||||
- SeaMonkey 1%
|
||||
- Opera Mail .9%
|
||||
- Sylpheed .4%
|
||||
|
||||
|
||||
### 最佳音频编辑工具###
|
||||
|
||||
![](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%
|
||||
- 其它 1.9%
|
||||
- SoX 1.3%
|
||||
- Mixxx 1.1%
|
||||
- LMMS .7%
|
||||
- Format Junkie .5%
|
||||
|
||||
### 最佳音频播放器 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f10.jpg)
|
||||
|
||||
VLC登上视频播放器分类的榜首(见下文)应该是毫无悬念的,但让人大跌眼镜的是,它居然在音频播放器分类中也有不俗的成绩。或许它可以考虑成为一站式媒体播放器。不管怎样,我们都乐见其取得好成绩。
|
||||
|
||||
- VLC 25.2%
|
||||
- Amarok 15.3%
|
||||
- Rhythmbox 10.4%
|
||||
- Clementine 8.6%
|
||||
- MPlayer 6.1%
|
||||
- Spotify 5.9%
|
||||
- Audacious 5.5%
|
||||
- Banshee 4.6%
|
||||
- 其它 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%
|
||||
|
||||
|
||||
*在"其它"当中,Quod Libet获得最多提名。
|
||||
|
||||
### 最佳视频播放器 ###
|
||||
|
||||
![](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%
|
||||
- 其它 2.7%*
|
||||
- Plex 2%
|
||||
- Kaffeine 1.9%
|
||||
- mpv 1.6%
|
||||
- MythTV 1.6%
|
||||
- Amarok 1.4%
|
||||
- Xmms .3%
|
||||
- Daum Potplayer .2%
|
||||
- Clementine .1%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多是SMPlayer。
|
||||
|
||||
### 最佳视频编辑器 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f10_1.jpg)
|
||||
|
||||
再次证明了我们的读者群深具极客色彩。我们未指定“非线性编辑器”,因此就转码技术而言,VLC在视频编辑类别中勉强获胜。干得好,VLC,干得好!
|
||||
|
||||
- VLC 17.5%
|
||||
- Kdenlive 16.4%
|
||||
- Blender 15.1%
|
||||
- Avidemux 13.2%
|
||||
- OpenShot 13.2%
|
||||
- Cinelerra 7.5%
|
||||
- PiTiVi 4.9%
|
||||
- LightWorks 4.8%
|
||||
- 其它 4.7%
|
||||
- LiVES 1.4%
|
||||
- Shotcut .6%
|
||||
- Jahshaka .4%
|
||||
- Flowblade .4%
|
||||
|
||||
|
||||
### 最佳云存储 ###
|
||||
|
||||
[](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f11.jpg)
|
||||
|
||||
- Dropbox 30.5%
|
||||
- ownCloud 23.6%
|
||||
- Google Drive 16%
|
||||
- rsync 8.3%
|
||||
- 其它 7.5%*
|
||||
- Amazon S3 6.6%
|
||||
- SpiderOak 4.4%
|
||||
- Box 1.8%
|
||||
- Copy 1%
|
||||
- AjaXplorer .3%
|
||||
|
||||
|
||||
Dropbox在这一领域曾经独步天下,几无对手,虽然这次仍为头魁,但优势已经不那么明显了。Dropbox的方便与稳定无可否认,但是将你的宝贵数据托管在ownCloud上,可管可控,也让ownCloud登上第二名的宝座。
|
||||
|
||||
*在“其它”当中,提名最多是 Younited 与 MEGA。当然很多人可能会说“非万不得已时不会选择云存储/我的文件都是存在本地”。
|
||||
|
||||
### 最佳Linux游戏 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/CIVILIZATION-V-FRONT-OF-BOX.jpg)
|
||||
|
||||
我很少玩游戏,所以每年我都特期待这一类别排名,希望可以从中找到最受欢迎的游戏,以供闲暇之需。看到NetHack排名这么靠前,我倒觉得挺开心的,尤其是在联想到竞争对手后更是心满意足。徘徊在让我们这些老派的龙与地下城玩家痴迷的随机通道确实有点意思。
|
||||
|
||||
- Civilization 5 26.5%
|
||||
- 其它 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%
|
||||
|
||||
*在“其它”当中,提名最多的(依次)是Minecraft, 0 A.D., Frozen Bubble, Battle for Wesnoth, Portal 以及 Counter Strike。
|
||||
|
||||
### 最佳虚拟方案 ###
|
||||
|
||||
我认为与Vagrant的关系大大带动了Oracle旗下VirtualBox的普及。当然,Vagrant也与其它虚拟平台合作,但自从其与VirtualBox无缝结合后,我认为对VirtualBox是极大提升。虚拟化实现系统是如此的高效与可靠,从裸机开始重构系统的方案几近历史。
|
||||
|
||||
![](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%
|
||||
- 其它 4.2%*
|
||||
- OpenVZ 1.7%
|
||||
- Linux-VServer 1.3%
|
||||
- Symantec Workspace Virtualization .1%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多的依次是Docker, ProxMox 与 LXC。
|
||||
|
||||
### 最佳监控应用 ###
|
||||
|
||||
![](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%
|
||||
- 其它 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%
|
||||
|
||||
*在“其它”当中,提名最多是Icinga 与 OpenNMS。
|
||||
|
||||
### 最佳开发运维配置管理工具###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/Git-Logo-2Color.jpg)
|
||||
|
||||
Git能拿到本类别第一名倒是蛮有趣的,虽然针对配置文件使用标准版本控制工具当然无可厚非,但我总觉得它应该配合Chef或Puppet一起使用。至少开发运维(DevOps)让我们这些执拗的老派系统管理员象对待代码一样处理配置文件。版本控制真令人难以置信,这一点似乎绝大多数读者均无异议。
|
||||
|
||||
- Git 39.4%
|
||||
- Puppet 17.2%
|
||||
- Ansible 8.9%
|
||||
- cron jobs 8.8%
|
||||
- Subversion 7.6%
|
||||
- Chef 5%
|
||||
- SaltStack 5.4%
|
||||
- 其它 4.6%*
|
||||
- CFEngine 3%
|
||||
|
||||
|
||||
*在“其它”当中,提名最多是 NixOps。
|
||||
|
||||
### 最佳编程语言 ###
|
||||
|
||||
![](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%
|
||||
- 其它 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%
|
||||
|
||||
*在“其它”当中,提名最多的依次是Scala, PHP 以及 Clojure。
|
||||
|
||||
### 最佳脚本语言 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f13_0.jpg)
|
||||
|
||||
Python强悍无比,无论在脚本及编程分类都有大量拥趸。对于象我这样懂Bash以及一点PHP皮毛的人来说,很明显在我一头扎进开发过程中,我需要重点突破。敢说空格无用?我--空格来也!
|
||||
|
||||
- Python 37.1%
|
||||
- Bash/Shell scripts 27%
|
||||
- Perl 11.8%
|
||||
- PHP 8.4%
|
||||
- JavaScript 6.7%
|
||||
- Ruby 4.9%
|
||||
- 其它 2.1%
|
||||
- Lua 2%
|
||||
|
||||
### 最佳Linux/开源新产品/新项目 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/11781f14.jpg)
|
||||
|
||||
Docker无疑是大赢家,当之无愧--游戏规则改变者嘛。 Jolla/Sailfish也小受欢迎,真是令人欣慰。我们爱安卓,不过多个选择不正是我们作为开源鼓手所提倡的一个重要方面吗。
|
||||
|
||||
- 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%
|
||||
|
||||
|
||||
###你用Linux做过的最酷的事情 ###
|
||||
|
||||
![](http://www.linuxjournal.com/files/linuxjournal.com/ufiles/imagecache/slideshow-400/tux_cruise.png)
|
||||
|
||||
这是读者选择奖里我最钟爱的新分类。想象一下你参加某次Linux会议,期间询问人们他们用Linux做过的最酷的事情。这里所做的与之大同小异!这里我们仅列出部分我们比较喜欢的,如欲了解完整列表,请访问:[http://www.linuxjournal.com/rc2014/coolest][2]。
|
||||
|
||||
注:最常见的答案是:“使用它”;“挽救数据/照片/导致Windows 机器罢工的任何东西”;“说服朋友/家人/业务转向使用Linux”;“学习”;“讲授”;“获得工作”;“家庭自动化”;“构建家庭媒体服务器”。下表是我们选出的并非最常见的答案,而是一些比较具体与有个性的答案。
|
||||
|
||||
- 在上世纪90年代中期建立procmail垃圾邮件预过滤规则。
|
||||
- 450-节点计算集群。
|
||||
- 7.1 通道前置放大器(集成Mopidy音乐播放器)。
|
||||
- Linux机器人 (参加Eurobot年度比赛)。
|
||||
- 无意间打印到错误的大陆。
|
||||
- 视频同步时增加音频通道。
|
||||
- 使用自已编写的代码分析NASA卫星数据。
|
||||
- 远程逗着猫玩。
|
||||
- 通过声音以及移动应用自动控制家里整个灯光设置。
|
||||
- 窗台植物自动浇水系统。
|
||||
- 浴室收音机。
|
||||
- 配制啤酒。
|
||||
- 创建了一个运行在国际空间站的应用。
|
||||
- 为某大型收费高速公路系统建立一套实时收费系统。
|
||||
- 自己装配智能手机。
|
||||
- 使用树莓派建立基于网络的家庭报警系统。
|
||||
- 树莓派集群破解加密的办公文档。
|
||||
- 控制我的Parrot无人机。
|
||||
- 控制186台风力涡轮机的通信。
|
||||
- 在Linux下使用Stellarium控制我的米德望远镜。
|
||||
- 用一台十几年的老笔记本转换卡带式家庭视频的格式。
|
||||
- 在靠近北极地区创建网状网络。
|
||||
- 使用无线数据发射器创建海洋环境下的传感器浮标。
|
||||
- 发现新行星。
|
||||
- 修复位于美国丹佛的jabber服务器, 而我当时却身在约丹安曼一家酒店大堂。
|
||||
- 得到一张Linus亲笔签名的Red Hat 5.0 CD。
|
||||
- 入侵我的咖啡机,在咖啡做好后给我一条消息。
|
||||
- 给我女儿介绍乐高机器人EV3。
|
||||
- 监控酒窖温度与湿度,过热或过温时开门。
|
||||
- 用树莓派代替温泉浴缸上的控制器。
|
||||
- 使用脚本连接四天每隔15秒开关一次同事的CD托盘。
|
||||
- 使用LFS系统为一家全国性石油公司迁移ACH自动转帐系统。
|
||||
- 身在其它城市冲我家里的马桶。
|
||||
- 远程控制鸡舍门。
|
||||
- 使用树莓派为16个站点部署基于网络的洒水器控制器(并控制水池与庭院灯光)。
|
||||
- 链接SSH通道通过三级跳连接家与工作(因网络设置方面的限制)。
|
||||
- 建立一套系统,监控可再生能源的安装部分:两套固定的太阳能电池阵,一套两轴太阳跟踪太阳能电池阵,以及一台风力涡轮机。生产以及天气数据实时显示在网络站点。
|
||||
- 还是在“猫”时代,我用电脑每天早上叫醒我女朋友去上班。
|
||||
- 使用一个Wii摇控器,通过蓝牙将我的笔记本作为红外摄像机,侦测我女儿的旋转木马的运动,以及控制视频游戏。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.linuxjournal.com/rc2014
|
||||
|
||||
作者:[Shawn Powers][a]
|
||||
译者:[yupmoon](https://github.com/yupmoon)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [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
|
@ -1,27 +1,26 @@
|
||||
、Linux 3.18 内核发布了,下面的是更新的内容
|
||||
Linux 3.18 新内核带来了什么新东西?
|
||||
================================================================================
|
||||
![](http://www.omgubuntu.co.uk/wp-content/uploads/2011/07/Tux-psd3894.jpg)
|
||||
|
||||
新的一月意味着新的稳定版Linux内核的发布,今天Linus Torvalds[宣布Linux 3.18 很快就会发布了][1]。
|
||||
新的一月意味着新的稳定版Linux内核的发布,前一段时间,Linus Torvalds[宣布Linux 3.18 很快就会发布了][1]。
|
||||
|
||||
Torvalds在Linux内核邮件列表中解释到,由于在3.17中还存在几个令一小部分用户烦心的问题,‘**绝不可以在一些人积极解决老问题时其他人无所事事。**’
|
||||
Torvalds在Linux内核邮件列表中解释到,由于在3.17中还存在几个令一小部分用户烦心的问题,但是‘**绝不可以在一些人积极解决老问题时其他人无所事事。**’
|
||||
|
||||
### Linux 3.18中有什么新的? ###
|
||||
|
||||
Linux 3.18内核主要致力于硬件支持、电源效率、bug修复和可靠性。
|
||||
|
||||
如往常一样,这些内容跨越很大,容易让人迷惑 。比如:加密层多重缓冲操作 - 到气冲感知, 就像对雷蛇游戏手柄的支持。
|
||||
如往常一样,这些内容跨度很大,容易让人迷惑 。比如:加密层多重缓冲操作 - 到气冲感知, 就像对雷蛇游戏手柄的支持。
|
||||
|
||||
下面我们收集了这个版本的重要的改变。这远远不是所有的,只是选取了一些更相关的内容。
|
||||
|
||||
|
||||
- Nouveau (免费 Nvidia GPU 驱动) 现在支持基础 DisplayPort 音频
|
||||
- Nouveau (开源的 Nvidia GPU 驱动) 现在支持基础 DisplayPort 音频
|
||||
- 对雷蛇游戏手柄的支持,用在Xbox 360上
|
||||
- Xilinx USB2 外设
|
||||
- 对Microchip AR1021 i2c、PenMount 6000 touch的触摸屏支持。
|
||||
- 音频编码: Cirrus Logic CS35L32、 Everest ES8328and Freescale ES8328
|
||||
- 音频支持: 通用飞思卡尔声卡, A模拟SSM4567音频放大器
|
||||
- 不同的文件系统提升, 包括 Btrfs 和 F2FS
|
||||
- 对Microchip AR1021 i2c、PenMount 6000 touch的触摸屏支持
|
||||
- 音频编码: Cirrus Logic CS35L32、 Everest ES8328 和 Freescale ES8328
|
||||
- 音频支持: 通用飞思卡尔声卡, Analog Devices SSM4567音频放大器
|
||||
- 几个文件系统提升, 包括 Btrfs 和 F2FS
|
||||
- 现在支持了DCTCP拥塞控制算法
|
||||
- JIT 编译64位 eBPF程序
|
||||
- “Tinification” 帮助开发人员编译更精简更小的内核
|
||||
@ -34,7 +33,7 @@ Linux 3.18内核主要致力于硬件支持、电源效率、bug修复和可靠
|
||||
|
||||
- [下载Linux内核源码包][2]
|
||||
|
||||
有一个由Canonical维护的最新Linux内核归档。尽管你可能在其他地方看到过,但是,请注意,这不是针对终端用户的。没有任何保证与支持,你自己承担风险。
|
||||
这里有一个由Canonical维护的最新Linux内核归档。尽管你可能在其他地方看到过,但是,请注意,这不是针对终端用户的。没有任何保证与支持,你自己承担风险。
|
||||
|
||||
- [访问Ubuntu内核主线归档][3]
|
||||
|
||||
@ -44,7 +43,7 @@ via: http://www.omgubuntu.co.uk/2014/12/linux-kernel-3-18-released-whats-new
|
||||
|
||||
作者:[Joey-Elijah Sneddon][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/) 荣誉推出
|
||||
|
@ -27,4 +27,4 @@ via: http://www.computerworld.com/article/2685286/red-hat-acquires-feedhenry-to-
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://www.computerworld.com/author/Mikael-Rickn%C3%A4s/
|
||||
[1]:http://www.redhat.com/en/about/blog/its-time-go-mobile
|
||||
[1]:http://www.redhat.com/en/about/blog/its-time-go-mobile
|
||||
|
@ -1,540 +0,0 @@
|
||||
translating by yupmoon
|
||||
|
||||
|
||||
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
|
@ -1,3 +1,6 @@
|
||||
////translating by yupmoon
|
||||
|
||||
|
||||
Open source all over the world
|
||||
================================================================================
|
||||
![](https://opensource.com/sites/default/files/styles/image-full-size/public/images/business/BUS_OpenSourceExperience_520x292_cm.png)
|
||||
@ -145,4 +148,4 @@ via: https://opensource.com/business/14/12/jim-whitehurst-inspiration-open-sourc
|
||||
[44]:http://jobs.redhat.com/life-at-red-hat/our-culture/
|
||||
[45]:http://www.gutenberg.org/ebooks/4300
|
||||
[46]:https://twitter.com/philshapiro
|
||||
[47]:http://libreoffice.org/
|
||||
[47]:http://libreoffice.org/
|
||||
|
@ -1,3 +1,4 @@
|
||||
Translating by ZTinoZ
|
||||
Was 2014 "The Year of Linux Desktop"?
|
||||
================================================================================
|
||||
> The Linux desktop is finally hitting all the right notes
|
||||
@ -42,4 +43,4 @@ via: http://news.softpedia.com/news/Was-2014-The-Year-of-Linux-Desktop-467036.sh
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://news.softpedia.com/editors/browse/silviu-stahie
|
||||
[a]:http://news.softpedia.com/editors/browse/silviu-stahie
|
||||
|
@ -0,0 +1,81 @@
|
||||
Docker and the Integrated Open Source Company
|
||||
================================================================================
|
||||
It’s been a long time since an open source project has gotten as much buzz and attention as Docker. The easiest way to explain the concept is, well, to look at the logo of the eponymous1 company that created and manages the project:
|
||||
|
||||
![](http://2yj23r14cytosbxol4cavq337g.wpengine.netdna-cdn.com/wp-content/uploads/2014/12/docker.png)
|
||||
|
||||
The reference in the logo is to shipping containers, one of the most important inventions of the 20th century. Actually, the word “invention” is not quite right: the idea of putting bulk goods into consistently-sized boxes goes back at least a few hundred years.[2][1] What changed the world was the standardization of containers by a trucking magnate named Malcom McLean and Keith Tantlinger, his head engineer. Tantlinger developed much of the technology undergirding the intermodal container, especially its corner casting and Twistlock mechanism that allowed the containers to be stacked on ships, transported by trucks, and moved by crane. More importantly, Tantlinger convinced McLean to release the patented design for anyone to copy without license, knowing that the technology would only be valuable if it were deployed in every port and on every transport ship in the world. Tantlinger, to put it in software terms, open-sourced the design.
|
||||
|
||||
Shipping containers really are a perfect metaphor for what Docker is building: standardized containers for applications.
|
||||
|
||||
|
||||
- Just as the idea of a container wasn’t invented by Tantlinger, Docker is building on a concept that has been around for quite a while. Companies like Oracle, HP, and IBM have used containers for many years, and Google especially has a very similar implementation to Docker that they use for internal projects. Docker, though, by being open source and [community-centric][2], offers the promise of standardization
|
||||
- It doesn’t matter what is inside of a shipping container; the container itself will fit on any ship, truck, or crane in the world. Similarly, it doesn’t matter what app (and associated files, frameworks, dependencies, etc.) is inside of a docker container; the container will run on any Linux distribution and, more importantly, just about every cloud provider including AWS, Azure, Google Cloud Platform, Rackspace, etc.
|
||||
- When you move abroad, you can literally have a container brought to your house, stick in your belongings, and then have the entire thing moved to a truck to a crane to a ship to your new country. Similarly, containers allow developers to build and test an application on their local machine and have confidence that the application will behave the exact same way when it is pushed out to a server. Because everything is self-contained, the developer does not need to worry about there being different frameworks, versions, and other dependencies in the various places the application might be run
|
||||
|
||||
The implications of this are far-reaching: not only do containers make it easier to manage the lifecycle of an application, they also (theoretically) commoditize cloud services through the age-old hope of “write once run anywhere.” More importantly, at least for now, docker containers offer the potential of being far more efficient than virtual machines. Relative to a container, using virtual machines is like using a car transport ship to move cargo: each unique entity on the ship is self-powered, which means a lot of wasted resources (those car engines aren’t very useful while crossing the ocean). Similarly, each virtual machine has to deal with the overhead of its own OS; containers, on the other hand, all share the same OS resulting in huge efficiency gains.[3][4]
|
||||
|
||||
In short, Docker is a really big deal from a technical perspective. What excites me, though, is that the company is also innovating when it comes to their business model.
|
||||
|
||||
----------
|
||||
|
||||
The problem with monetizing open source is self-evident: if the software is freely available, what exactly is worth paying for? And, unlike media, you can’t exactly stick an advertisement next to some code!
|
||||
|
||||
For many years the default answer has been to “be like Red Hat.” Red Hat is the creator and maintainer of the Red Hat Enterprise Linux (RHEL) distribution, which, like all Linux distributions, is freely available.[4][5] Red Hat, however, makes money by offering support, training, a certification program, etc. for enterprises looking to use their software. It is very much a traditional enterprise model – make money on support! – just minus the up-front license fees.
|
||||
|
||||
This sort of business is certainly still viable; Hortonworks is [set to IPO][3] with a similar model based on Hadoop, albeit at a much lower valuation than it received during its last VC round. That doesn’t surprise me: I don’t think this is a particularly great model from a business perspective.
|
||||
|
||||
To understand why it’s useful to think about there being three distinct parts of any company that is based on open source: the open source project itself, any value-added software built on top of that project, and the actual means of making money:
|
||||
|
||||
![](http://2yj23r14cytosbxol4cavq337g.wpengine.netdna-cdn.com/wp-content/uploads/2014/12/opensourcepaper.jpg)
|
||||
|
||||
*There are three parts of an open source business: the project itself, the value-added software on top of that project, and the means of monetization*
|
||||
|
||||
The problem with the “Red Hat” model is the complete separation of all three of these parts: Red Hat doesn’t control the core project (Linux), and their value-added software (RHEL) is free, leaving their money-making support program to stand alone. To the company’s credit they have pulled this model off, but I think a big reason is because utilizing Linux was so much more of a challenge back in the 90s.[5][11] I highly doubt Red Hat could successfully build a similar business from scratch today.
|
||||
|
||||
![](http://2yj23r14cytosbxol4cavq337g.wpengine.netdna-cdn.com/wp-content/uploads/2014/12/redhatpaper.jpg)
|
||||
|
||||
*The three parts of Red Hat’s business are separate and more difficult for the company to control and monetize*
|
||||
|
||||
GitHub, the repository hosting service, is exploring what is to my mind a more compelling model. GitHub’s value-added software is a hosting service based on Git, an open-source project designed by Linux creator Linus Torvalds. Crucially, GitHub is seeking to monetize that hosting service directly, both through a SaaS model and through an on-premise enterprise offering[6][6]. This means that, in comparison to Red Hat, there is one less place to disintermediate GitHub: you can’t get their value-added software (for private projects – public is free) unless you’re willing to pay.
|
||||
|
||||
![](http://2yj23r14cytosbxol4cavq337g.wpengine.netdna-cdn.com/wp-content/uploads/2014/12/githubpaper.jpg)
|
||||
|
||||
*While GitHub does not control Git, their value-added software and means of monetization are unified, making the latter much easier and more sustainable*
|
||||
|
||||
Docker takes the GitHub model a step further: the company controls everything from the open source project itself to the value-added software (DockerHub) built on top of that, and, just last week, [announced a monetization model][7] that is very similar to GitHub’s enterprise offering. Presuming Docker continues its present momentum and finds success with this enterprise offering, they have the potential to be a fully integrated open source software company: project, value-added software, and monetization all rolled into one.
|
||||
|
||||
![](http://2yj23r14cytosbxol4cavq337g.wpengine.netdna-cdn.com/wp-content/uploads/2014/12/dockerpaper.jpg)
|
||||
|
||||
*Docker controls all the parts of their business: they are a fully integrated open source company.*
|
||||
|
||||
This is exciting, and, to be honest, a little scary. What is exciting is that very few movements have had such a profound effect as open source software, and not just on the tech industry. Open source products are responsible for end user products like this blog; more importantly, open source technologies have enabled exponentially more startups to get off the ground with minimal investment, vastly accelerating the rate of innovation and iteration in tech.[7][8] The ongoing challenge for any open source project, though, is funding, and Docker’s business model is a potentially sustainable solution not just for Docker but for future open source technologies.
|
||||
|
||||
That said, if Docker is successful, over the long run commercial incentives will steer the Docker open source project in a way that benefits Docker the company, which may not be what is best for the community broadly. That is what is scary about this: might open source in the long run be subtly corrupted by this business model? The makers of CoreOS, a stripped-down Linux distribution that is a perfect complement for Docker, [argued that was the case][9] last week:
|
||||
|
||||
> 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. We should stop talking about Docker containers, and start talking about the Docker Platform. It is not becoming the simple composable building block we had envisioned.
|
||||
|
||||
This, I suppose, is the beauty of open source: if you disagree, fork, which is essentially what CoreOS did, launching their own “Rocket” container.[8][10] It also shows that Docker’s business model – and any business model that contains open source – will never be completely defensible: there will always be a disintermediation point. I suspect, though, that Rocket will fail and Docker’s momentum will continue: the logic of there being one true container is inexorable, and Docker has already built up quite a bit of infrastructure and – just maybe – a business model to make it sustainable.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://stratechery.com/2014/docker-integrated-open-source-company/
|
||||
|
||||
作者:[Ben Thompson][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://stratechery.com/category/about/
|
||||
[1]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:1:1300
|
||||
[2]:https://github.com/docker/docker
|
||||
[3]:http://blogs.wsj.com/digits/2014/12/01/ipo-bound-hortonworks-drops-out-of-billion-dollar-startup-club/
|
||||
[4]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:2:1300
|
||||
[5]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:3:1300
|
||||
[6]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:5:1300
|
||||
[7]:http://blog.docker.com/2014/12/docker-announces-docker-hub-enterprise/
|
||||
[8]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:6:1300
|
||||
[9]:https://coreos.com/blog/rocket/
|
||||
[10]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:7:1300
|
||||
[11]:http://stratechery.com/2014/docker-integrated-open-source-company/#fn:4:1300
|
@ -1,248 +0,0 @@
|
||||
SPccman translating
|
||||
How to create a custom backup plan for Debian with backupninja
|
||||
================================================================================
|
||||
Backupninja is a powerful and highly-configurable backup tool for Debian based distributions. In the [previous tutorial][1], we explored how to install backupninja and how to set up two backup actions for the program to perform. However, we should note that those examples were only "the tip of the iceberg," so to speak. In this post we will discuss how to leverage custom handlers and helpers that allow this program to be customized in order to accomplish almost any backup need that you can think of.
|
||||
|
||||
And believe me - that is not an overstatement, so let's begin.
|
||||
|
||||
### A Quick Review of Backupninja ###
|
||||
|
||||
One of backupninja's distinguishing features is the fact that you can just drop plain text configuration or action files in /etc/backup.d, and the program will take care of the rest. In addition, we can write custom scripts (aka "handlers") and place them in /usr/share/backupninja to handle each type of backup action. Furthermore, we can have these scripts be executed via ninjahelper's ncurses-based interactive menus (aka "helpers") to guide us to create the configuration files we mentioned earlier, minimizing the chances of human error.
|
||||
|
||||
### Creating a Custom Handler and Helper ###
|
||||
|
||||
Our goal in this case is to create a script to handle the backup of chosen home directories into a tarball with either **gzip** or **bzip2** compression, excluding music and video files. We will simply name this script home, and place it under /usr/backup/ninja.
|
||||
|
||||
Although you could achieve the same objective with the default tar handler (refer to /usr/share/backupninja/tar and /usr/share/backupninja/tar.helper), we will use this approach to show how to create a useful handler script and ncurses-based helper from scratch. You can then decide how to apply the same principles depending on your specific needs.
|
||||
|
||||
Note that since handlers are sourced from the main script, there is no need to start with #!/bin/bash at the top.
|
||||
|
||||
Our proposed handler (/usr/share/backupninja/home) is as follows. It is heavily commented for clarification. The getconf function is used to read the backup action's configuration file. If you specify a value for a variable here, it will override the corresponding value present in the configuration file:
|
||||
|
||||
# home handler script for backupninja
|
||||
|
||||
# Every backup file will identify the host by its FQDN
|
||||
getconf backupname
|
||||
|
||||
# Directory to store backups
|
||||
getconf backupdir
|
||||
|
||||
# Default compression
|
||||
getconf compress
|
||||
|
||||
# Include /home directory
|
||||
getconf includes
|
||||
|
||||
# Exclude files with *.mp3 and *.mp4 extensions
|
||||
getconf excludes
|
||||
|
||||
# Default extension for the packaged backup file
|
||||
getconf EXTENSION
|
||||
|
||||
# Absolute path to date binary
|
||||
getconf TAR `which tar`
|
||||
|
||||
# Absolute path to date binary
|
||||
getconf DATE `which date`
|
||||
|
||||
# Chosen date format
|
||||
DATEFORMAT="%Y-%m-%d"
|
||||
|
||||
# If backupdir does not exist, exit with fatal error
|
||||
if [ ! -d "$backupdir" ]
|
||||
then
|
||||
mkdir -p "$backupdir" || fatal "Can not make directory $backupdir"
|
||||
fi
|
||||
|
||||
# If backupdir is not writeable, exit with fatal error as well
|
||||
if [ ! -w "$backupdir" ]
|
||||
then
|
||||
fatal "Directory $backupdir is not writable"
|
||||
fi
|
||||
|
||||
# Set the right tar option as per the chosen compression format
|
||||
case $compress in
|
||||
"gzip")
|
||||
compress_option="-z"
|
||||
EXTENSION="tar.gz"
|
||||
;;
|
||||
"bzip")
|
||||
compress_option="-j"
|
||||
EXTENSION="tar.bz2"
|
||||
;;
|
||||
"none")
|
||||
compress_option=""
|
||||
;;
|
||||
*)
|
||||
warning "Unknown compress filter ($tar_compress)"
|
||||
compress_option=""
|
||||
EXTENSION="tar.gz"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Exclude the following file types / directories
|
||||
exclude_options=""
|
||||
for i in $excludes
|
||||
do
|
||||
exclude_options="$exclude_options --exclude $i"
|
||||
done
|
||||
|
||||
# Debugging messages, performing backup
|
||||
debug "Running backup: " $TAR -c -p -v $compress_option $exclude_options \
|
||||
-f "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`".$EXTENSION" \
|
||||
$includes
|
||||
|
||||
# Redirect standard output to a file with .list extension
|
||||
# and standard error to a file with .err extension
|
||||
$TAR -c -p -v $compress_option $exclude_options \
|
||||
-f "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`".$EXTENSION" \
|
||||
$includes \
|
||||
> "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`.list \
|
||||
2> "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`.err
|
||||
|
||||
[ $? -ne 0 ] && fatal "Tar backup failed"
|
||||
|
||||
Next, we will create our helper file (/usr/share/backupninja/home.helper) so that our handlers shows up as a menu in **ninjahelper**:
|
||||
|
||||
# Backup action's description. Separate words with underscores.
|
||||
HELPERS="$HELPERS home:backup_of_home_directories"
|
||||
|
||||
home_wizard() {
|
||||
home_title="Home action wizard"
|
||||
|
||||
backupname=`hostname --fqdn`
|
||||
|
||||
# Specify default value for the time when this backup actions is supposed to run
|
||||
inputBox "$home_title" "When to run this action?" "everyday at 01"
|
||||
[ $? = 1 ] && return
|
||||
home_when_run="when = $REPLY"
|
||||
|
||||
# Specify default value for backup file name
|
||||
inputBox "$home_title" "\"Name\" of backups" "$backupname"
|
||||
[ $? = 1 ] && return
|
||||
home_backupname="backupname = $REPLY"
|
||||
backupname="$REPLY"
|
||||
|
||||
# Specify default directory to store the backups
|
||||
inputBox "$home_title" "Directory where to store the backups" "/var/backups/home"
|
||||
[ $? = 1 ] && return
|
||||
home_backupdir="backupdir = $REPLY"
|
||||
|
||||
# Specify default values for the radiobox
|
||||
radioBox "$home_title" "Compression" \
|
||||
"none" "No compression" off \
|
||||
"gzip" "Compress with gzip" on \
|
||||
"bzip" "Compress with bzip" off
|
||||
[ $? = 1 ] && return;
|
||||
result="$REPLY"
|
||||
home_compress="compress = $REPLY "
|
||||
|
||||
REPLY=
|
||||
while [ -z "$REPLY" ]; do
|
||||
formBegin "$home_title: Includes"
|
||||
formItem "Include:" /home/gacanepa
|
||||
formDisplay
|
||||
[ $? = 0 ] || return 1
|
||||
home_includes="includes = "
|
||||
for i in $REPLY; do
|
||||
[ -n "$i" ] && home_includes="$home_includes $i"
|
||||
done
|
||||
done
|
||||
|
||||
REPLY=
|
||||
while [ -z "$REPLY" ]; do
|
||||
formBegin "$home_title: Excludes"
|
||||
formItem "Exclude:" *.mp3
|
||||
formItem "Exclude:" *.mp4
|
||||
# Add as many “Exclude” text boxes as needed to specify other exclude options
|
||||
formItem "Exclude:"
|
||||
formItem "Exclude:"
|
||||
formDisplay
|
||||
[ $? = 0 ] || return 1
|
||||
home_excludes="excludes = "
|
||||
for i in $REPLY; do
|
||||
[ -n "$i" ] && home_excludes="$home_excludes $i"
|
||||
done
|
||||
done
|
||||
|
||||
# Save the config
|
||||
get_next_filename $configdirectory/10.home
|
||||
cat > $next_filename <<EOF
|
||||
$home_when_run
|
||||
$home_backupname
|
||||
$home_backupdir
|
||||
$home_compress
|
||||
$home_includes
|
||||
$home_excludes
|
||||
|
||||
# tar binary - have to be GNU tar
|
||||
TAR `which tar`
|
||||
DATE `which date`
|
||||
DATEFORMAT "%Y-%m-%d"
|
||||
EXTENSION tar
|
||||
|
||||
EOF
|
||||
# Backupninja requires that configuration files be chmoded to 600
|
||||
chmod 600 $next_filename
|
||||
}
|
||||
|
||||
### Running Ninjahelper ###
|
||||
|
||||
Once we have created our handler script named home and the corresponding helper named home.helper, let's run ninjahelper command to create a new backup action:
|
||||
|
||||
# ninjahelper
|
||||
|
||||
And choose create a new backup action.
|
||||
|
||||
![](https://farm8.staticflickr.com/7467/15322605273_90edaa5bc1_z.jpg)
|
||||
|
||||
We will now be presented with the available action types. Let's select "backup of home directories":
|
||||
|
||||
![](https://farm9.staticflickr.com/8636/15754955450_f3ef82217b_z.jpg)
|
||||
|
||||
The next screens will display the default values as set in the helper (only 3 of them are shown here). Feel free to edit the values in the text box. Particularly, refer to the scheduling section of the documentation for the right syntax for the when variable.
|
||||
|
||||
![](https://farm8.staticflickr.com/7508/15941578982_24b680e1c3_z.jpg)
|
||||
|
||||
![](https://farm8.staticflickr.com/7562/15916429476_6e84b307aa_z.jpg)
|
||||
|
||||
![](https://farm8.staticflickr.com/7528/15319968994_41705b7283_z.jpg)
|
||||
|
||||
When you are done creating the backup action, it will show in ninjahelper's initial menu:
|
||||
|
||||
![](https://farm8.staticflickr.com/7534/15942239225_bb66dbdb63.jpg)
|
||||
|
||||
Then you can press ENTER to show the options available for this action. Feel free to experiment with them, as their description is quite straightforward.
|
||||
|
||||
Particularly, "run this action now" will execute the backup action in debug mode immediately regardless of the scheduled time:
|
||||
|
||||
![](https://farm8.staticflickr.com/7508/15754955470_9af6251096_z.jpg)
|
||||
|
||||
Should the backup action fail for some reason, the debug will display an informative message to help you locate the error and correct it. Consider, for example, the following error messages that were displayed after running a backup action with bugs that have not been corrected yet:
|
||||
|
||||
![](https://farm9.staticflickr.com/8662/15754955480_487d040fcd_z.jpg)
|
||||
|
||||
The image above tells you that the connection needed to complete the backup action could not be completed because the remote host seems to be down. In addition, the destination directory specified in the helper file does not exist. Once you correct the problems, re-run the backup action.
|
||||
|
||||
A few things to remember:
|
||||
|
||||
- If you create a custom script in /usr/share/backupninja (e.g., foobar) to handle a specific backup action, you also need to write a corresponding helper (e.g., foobar.helper) in order to create, through ninjahelper, a file named 10.foobar (11 and onward for further actions as well) in /etc/backup.d, which is the actual configuration file for the backup action.
|
||||
- You can execute your backups at any given time via ninjahelper as explained earlier, or have them run as per the specified frequency in the when variable.
|
||||
|
||||
### Summary ###
|
||||
|
||||
In this post we have discussed how to create our own backup actions from scratch and how to add a related menu in ninjahelper to facilitate the creation of configuration files. With the previous [backupninja article][2] and the present one I hope I've given you enough good reasons to go ahead and at least try it.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://xmodulo.com/create-custom-backup-plan-debian.html
|
||||
|
||||
作者:[ Gabriel Cánepa][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/gabriel
|
||||
[1]:http://xmodulo.com/backup-debian-system-backupninja.html
|
||||
[2]:http://xmodulo.com/backup-debian-system-backupninja.html
|
@ -70,7 +70,7 @@ Carla Schroder著有The Book of Audacity, Linux Cookbook, Linux Networking Cookb
|
||||
via: http://www.smallbusinesscomputing.com/biztools/5-best-open-source-web-browser-security-apps.html
|
||||
|
||||
作者:[Carla Schroder][a]
|
||||
译者:[译者ID](https://github.com/yupmoon)
|
||||
译者:[yupmoon](https://github.com/yupmoon)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
@ -1,39 +1,46 @@
|
||||
spccman translating
|
||||
How to Setup Bind Chroot DNS Server on CentOS 7.0 VPS
|
||||
================================================================================
|
||||
BIND (Berkeley Internet Name Daemon) also known as NAMED is the most widely used DNS server in the internet. This tutorial will descibes how we can run BIND in a chroot jail, the process is simply unable to see any part of the filesystem outside the jail. For example, in this post, i will setting up BIND to run chrooted to the directory /var/named/chroot/. Well, to BIND, the contents of this directory will appear to be /, the root directory. A “jail” is a software mechanism for limiting the ability of a process to access resources outside a very limited area, and it’s purposely to enhance the security. Bind Chroot DNS server was by default configured to /var/named/chroot. You may follow this complete steps to implement Bind Chroot DNS Server on CentOS 7.0 virtual private server (VPS).
|
||||
在CentOS7.0 VPS上搭建 Bind Chroot DNS 服务器
|
||||
====================
|
||||
|
||||
1. Install Bind Chroot DNS server :
|
||||
BIND(Berkeley internet Name Daemon)也叫做NAMED是现今互联网上使用最为广泛的DNS 服务器程序。这篇文章将要讲述如何在 chroot jail (chroot “监牢”,所谓“监牢”就是指通过chroot机制来更改某个进程所能看到的根目录,即将某进程限制在指定目录中,保证该进程只能对该目录及其子目录的文件有所动作,从而保证整个服务器的安全)中运行 BIND,这样它就无法访问文件系统中除“jail”以外的其它部分。例如,在这篇文章中,我会将BIND的运行根目录改为/var/named/chroot/。当然,对于BIND来说,这个目录就是/(根目录)。 “jail”(监牢,下同)是一个软件机制,其功能是使得某个程序无法访问规定区域之外的资源,同样也为了增强安全性。Bind Chroot DNS 服务器的默认“jail”为/var/named/chroot。你可以按照下列步骤,在CentOS 7.0 虚拟专用服务器(VPS)上部署 Bind Chroot DNS 服务器。
|
||||
|
||||
1. 安装Bind Chroot DNS 服务器:
|
||||
|
||||
[root@centos7 ~]# yum install bind-chroot bind -y
|
||||
|
||||
2. Copy all bind related files to prepare bind chrooted environments :
|
||||
2. 拷贝bind相关文件,准备bind chroot 环境
|
||||
|
||||
[root@centos7 ~]# cp -R /usr/share/doc/bind-*/sample/var/named/* /var/named/chroot/var/named/
|
||||
|
||||
3. Create bind related files into chrooted directory :
|
||||
3. 在bind chroot 的目录中创建相关文件
|
||||
|
||||
[root@centos7 ~]# touch /var/named/chroot/var/named/data/cache_dump.db
|
||||
|
||||
[root@centos7 ~]# touch /var/named/chroot/var/named/data/named_stats.txt
|
||||
|
||||
[root@centos7 ~]# touch /var/named/chroot/var/named/data/named_mem_stats.txt
|
||||
|
||||
[root@centos7 ~]# touch /var/named/chroot/var/named/data/named.run
|
||||
|
||||
[root@centos7 ~]# mkdir /var/named/chroot/var/named/dynamic
|
||||
|
||||
[root@centos7 ~]# touch /var/named/chroot/var/named/dynamic/managed-keys.bind
|
||||
|
||||
4. Bind lock file should be writeable, therefore set the permission to make it writable as below :
|
||||
|
||||
4. 将 Bind 锁定文件设置为可写:
|
||||
|
||||
[root@centos7 ~]# chmod -R 777 /var/named/chroot/var/named/data
|
||||
[root@centos7 ~]# chmod -R 777 /var/named/chroot/var/named/dynamic
|
||||
|
||||
5. Copy /etc/named.conf chrooted bind config folder :
|
||||
5. 将 /etc/named.conf 拷贝到 bind chroot目录
|
||||
|
||||
[root@centos7 ~]# cp -p /etc/named.conf /var/named/chroot/etc/named.conf
|
||||
|
||||
6.Configure main bind configuration in /etc/named.conf. Append the example.local zone information to the file :
|
||||
6. 在/etc/named.conf中对 bind 进行配置。在文件尾添加 example.local 域信息:
|
||||
|
||||
[root@centos7 ~]# vi /var/named/chroot/etc/named.conf
|
||||
|
||||
Create forward and reverse zone into named.conf:
|
||||
在 named.conf 中创建转发域(Forward Zone)与反向域(Reverse Zone):
|
||||
|
||||
|
||||
..
|
||||
..
|
||||
@ -49,13 +56,13 @@ Create forward and reverse zone into named.conf:
|
||||
..
|
||||
..
|
||||
|
||||
Full named.conf configuration :
|
||||
named.conf 完全配置
|
||||
|
||||
//
|
||||
// named.conf
|
||||
//
|
||||
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
|
||||
// server as a caching only nameserver (as a localhost DNS resolver only).
|
||||
// 由Red Hat提供,将 ISC BIND named(8) DNS服务器
|
||||
// 配置为暂存域名服务器 (用来做本地DNS解析).
|
||||
//
|
||||
// See /usr/share/doc/bind*/sample/ for example named configuration files.
|
||||
//
|
||||
@ -70,14 +77,11 @@ Full named.conf configuration :
|
||||
allow-query { any; };
|
||||
|
||||
/*
|
||||
- If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
|
||||
- If you are building a RECURSIVE (caching) DNS server, you need to enable
|
||||
recursion.
|
||||
- If your recursive DNS server has a public IP address, you MUST enable access
|
||||
control to limit queries to your legitimate users. Failing to do so will
|
||||
cause your server to become part of large scale DNS amplification
|
||||
attacks. Implementing BCP38 within your network would greatly
|
||||
reduce such attack surface
|
||||
- 如果你要建立一个 授权域名服务器 服务器, 那么不要开启 recursion(递归) 功能。
|
||||
- 如果你要建立一个 递归 DNS 服务器, 那么需要开启recursion 功能。
|
||||
- 如果你的递归DNS服务器有公网IP地址, 你必须开启访问控制功能,
|
||||
只有那些合法用户才可以发询问. 如果不这么做的话,那么你的服
|
||||
服务就会受到DNS 放大攻击。实现BCP38将有效抵御这类攻击。
|
||||
*/
|
||||
recursion yes;
|
||||
|
||||
@ -119,13 +123,13 @@ Full named.conf configuration :
|
||||
include "/etc/named.rfc1912.zones";
|
||||
include "/etc/named.root.key";
|
||||
|
||||
7. Create Forward and Reverse zone files for domain example.local.
|
||||
7. 为 example.local 域名创建转发域与反向域文件
|
||||
|
||||
a) Create Forward Zone :
|
||||
a)创建转发域
|
||||
|
||||
[root@centos7 ~]# vi /var/named/chroot/var/named/example.local.zone
|
||||
|
||||
Add the following and save :
|
||||
添加如下内容并保存:
|
||||
|
||||
;
|
||||
; Addresses and other host information.
|
||||
@ -150,11 +154,11 @@ Add the following and save :
|
||||
ns1 IN A 192.168.0.70
|
||||
ns2 IN A 192.168.0.80
|
||||
|
||||
b) Create Reverse Zone :
|
||||
b)创建反向域
|
||||
|
||||
[root@centos7 ~]# vi /var/named/chroot/var/named/192.168.0.zone
|
||||
|
||||
----------
|
||||
----
|
||||
|
||||
;
|
||||
; Addresses and other host information.
|
||||
@ -171,9 +175,7 @@ b) Create Reverse Zone :
|
||||
|
||||
70.0.168.192.in-addr.arpa. IN PTR mx.example.local.
|
||||
70.0.168.192.in-addr.arpa. IN PTR ns1.example.local.
|
||||
80.0.168.192.in-addr.arpa. IN PTR ns2.example.local.
|
||||
|
||||
8. Stop and disable named service. Start and enable bind-chroot service at boot :
|
||||
80.0.168.192.in-addr.arpa. IN PTR ns2.example.local.。开机自启动 bind-chroot 服务:
|
||||
|
||||
[root@centos7 ~]# /usr/libexec/setup-named-chroot.sh /var/named/chroot on
|
||||
[root@centos7 ~]# systemctl stop named
|
||||
@ -182,17 +184,18 @@ b) Create Reverse Zone :
|
||||
[root@centos7 ~]# systemctl enable named-chroot
|
||||
ln -s '/usr/lib/systemd/system/named-chroot.service' '/etc/systemd/system/multi-user.target.wants/named-chroot.service'
|
||||
|
||||
As always if you need any help you can reach us on twitter @ehowstuff or drop us a comment below. [Jumping through archives page to read more articles..][1]
|
||||
[跳转到档案页,阅读更多文章][1]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
------------------
|
||||
|
||||
via: http://www.ehowstuff.com/how-to-setup-bind-chroot-dns-server-on-centos-7-0-vps/
|
||||
|
||||
作者:[skytech][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
译者:[SPccman](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://www.ehowstuff.com/author/mhstar/
|
||||
[1]:http://www.ehowstuff.com/archives/
|
||||
|
@ -0,0 +1,246 @@
|
||||
使用backupninja为Debian定制备份计划
|
||||
=======
|
||||
|
||||
backupninja是Debian系统(以及基于Debian的发行版)中一个强大的、高度可配置的备份软件。在[前一篇文章][1]中,我们探讨了如何安装backupninja以及如何设置两个备份操作并执行。然而,那些只是冰山一角。这一次,我们要讨论如何利用Helper与辅助功能,可以使用这些功能定制策略以完成任何备份需要。
|
||||
|
||||
###回顾 backupninja
|
||||
|
||||
backupninja的特点是它完全抛弃纯文本的配置文件/etc/backup.d,软件自己会搞定。另外,我们可以编写自定义脚本(又叫 “handlers”)放在/usr/share/backupninja 目录下来完成不同类型的备份操作。此外,可以通过ninjahelper的基于ncurses的交互式菜单(又叫”helpers")来指导我们创建一些配置文件,使得人工错误率降到最低。
|
||||
|
||||
###创建定制的Handler与Helper
|
||||
|
||||
这一节的目标是创建一个脚本,将home目录以**gzip**或**bzip2**压缩包的形式备份起来,不包括音乐与视频文件。我们将这个文件命名为home,将它放在/usr/backup/ninja目录下。
|
||||
|
||||
尽管你可以使用默认的tar handler(参考 /usr/share/backupninja/tar 与 /usr/share/backupninja/tar.helper)来达到这个效果,但是我们使用这种方法来展示如何创建实用的 handler 脚本与基于 ncurses 的 helper。你可以根据你的需求来决定如何运用同样的原则。
|
||||
|
||||
由于 handlers 来源与主脚本,所以无需以#!/bin/bash开始。
|
||||
|
||||
我们推荐的 handler (/usr/share/backupninja/home)如下所示。它带有非常多的注释说明。getconf 功能用来读取备份操作的配置文件。如果你指定了一个变量的值,那么它会覆盖配置文件中对应变量的值:
|
||||
|
||||
#/home 目录 handler 脚本
|
||||
|
||||
# 每个备份文件会通过 FQDN 来鉴别主机
|
||||
getconf backupname
|
||||
|
||||
# 备份文件的保存目录
|
||||
getconf backupdir
|
||||
|
||||
# 默认压缩
|
||||
getconf compress
|
||||
|
||||
# 包含 /home 目录
|
||||
getconf includes
|
||||
|
||||
#不包含 *.mp3 与 *.mp4 文件
|
||||
getconf excludes
|
||||
|
||||
# 默认扩展一打包的备份文件
|
||||
getconf EXTENSION
|
||||
|
||||
# Absolute path to date binary
|
||||
getconf TAR `which tar`
|
||||
|
||||
# Absolute path to date binary
|
||||
getconf DATE `which date`
|
||||
|
||||
# 日期格式
|
||||
DATEFORMAT="%Y-%m-%d"
|
||||
|
||||
# 如果备份目录不存在,以致命错误退出
|
||||
if [ ! -d "$backupdir" ]
|
||||
then
|
||||
mkdir -p "$backupdir" || fatal "Can not make directory $backupdir"
|
||||
fi
|
||||
|
||||
# 如果备份目录不可写, 同样以致命错误退出
|
||||
if [ ! -w "$backupdir" ]
|
||||
then
|
||||
fatal "Directory $backupdir is not writable"
|
||||
fi
|
||||
|
||||
# 根据压缩格式选择对应的tar选项
|
||||
case $compress in
|
||||
"gzip")
|
||||
compress_option="-z"
|
||||
EXTENSION="tar.gz"
|
||||
;;
|
||||
"bzip")
|
||||
compress_option="-j"
|
||||
EXTENSION="tar.bz2"
|
||||
;;
|
||||
"none")
|
||||
compress_option=""
|
||||
;;
|
||||
*)
|
||||
warning "Unknown compress filter ($tar_compress)"
|
||||
compress_option=""
|
||||
EXTENSION="tar.gz"
|
||||
;;
|
||||
esac
|
||||
|
||||
# 不包含一些文件类型/目录
|
||||
exclude_options=""
|
||||
for i in $excludes
|
||||
do
|
||||
exclude_options="$exclude_options --exclude $i"
|
||||
done
|
||||
|
||||
# 调试信息, 执行备份操作
|
||||
debug "Running backup: " $TAR -c -p -v $compress_option $exclude_options \
|
||||
-f "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`".$EXTENSION" \
|
||||
$includes
|
||||
|
||||
# 将标准输出重定向到以.list为扩展的文件
|
||||
# 将标准错误输出重定向到以.err为扩展的文件
|
||||
$TAR -c -p -v $compress_option $exclude_options \
|
||||
-f "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`".$EXTENSION" \
|
||||
$includes \
|
||||
> "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`.list \
|
||||
2> "$backupdir/$backupname-"`$DATE "+$DATEFORMAT"`.err
|
||||
|
||||
[ $? -ne 0 ] && fatal "Tar backup failed"
|
||||
|
||||
接下来我们将要创建helper文件 (/usr/share/backupninja/home.helper)这样,hendlers将会以菜单的形式在**ninjahelper**中显示:
|
||||
|
||||
# 备份操作描述. 以下划线分割单词.
|
||||
HELPERS="$HELPERS home:backup_of_home_directories"
|
||||
|
||||
home_wizard() {
|
||||
home_title="Home action wizard"
|
||||
|
||||
backupname=`hostname --fqdn`
|
||||
|
||||
# 指定备份操作的时间
|
||||
inputBox "$home_title" "When to run this action?" "everyday at 01"
|
||||
[ $? = 1 ] && return
|
||||
home_when_run="when = $REPLY"
|
||||
|
||||
# 指定备份文件名
|
||||
inputBox "$home_title" "\"Name\" of backups" "$backupname"
|
||||
[ $? = 1 ] && return
|
||||
home_backupname="backupname = $REPLY"
|
||||
backupname="$REPLY"
|
||||
|
||||
# 指定保存备份文件的默认路径
|
||||
inputBox "$home_title" "Directory where to store the backups" "/var/backups/home"
|
||||
[ $? = 1 ] && return
|
||||
home_backupdir="backupdir = $REPLY"
|
||||
|
||||
# 指定复选框的默认值
|
||||
radioBox "$home_title" "Compression" \
|
||||
"none" "No compression" off \
|
||||
"gzip" "Compress with gzip" on \
|
||||
"bzip" "Compress with bzip" off
|
||||
[ $? = 1 ] && return;
|
||||
result="$REPLY"
|
||||
home_compress="compress = $REPLY "
|
||||
|
||||
REPLY=
|
||||
while [ -z "$REPLY" ]; do
|
||||
formBegin "$home_title: Includes"
|
||||
formItem "Include:" /home/gacanepa
|
||||
formDisplay
|
||||
[ $? = 0 ] || return 1
|
||||
home_includes="includes = "
|
||||
for i in $REPLY; do
|
||||
[ -n "$i" ] && home_includes="$home_includes $i"
|
||||
done
|
||||
done
|
||||
|
||||
REPLY=
|
||||
while [ -z "$REPLY" ]; do
|
||||
formBegin "$home_title: Excludes"
|
||||
formItem "Exclude:" *.mp3
|
||||
formItem "Exclude:" *.mp4
|
||||
# 按需增加多个“Exclude”文本框指定其他不须包含的内容
|
||||
formItem "Exclude:"
|
||||
formItem "Exclude:"
|
||||
formDisplay
|
||||
[ $? = 0 ] || return 1
|
||||
home_excludes="excludes = "
|
||||
for i in $REPLY; do
|
||||
[ -n "$i" ] && home_excludes="$home_excludes $i"
|
||||
done
|
||||
done
|
||||
|
||||
# 保存配置
|
||||
get_next_filename $configdirectory/10.home
|
||||
cat > $next_filename <<EOF
|
||||
$home_when_run
|
||||
$home_backupname
|
||||
$home_backupdir
|
||||
$home_compress
|
||||
$home_includes
|
||||
$home_excludes
|
||||
|
||||
# 二进制压缩包,必须为GNU tar
|
||||
TAR `which tar`
|
||||
DATE `which date`
|
||||
DATEFORMAT "%Y-%m-%d"
|
||||
EXTENSION tar
|
||||
|
||||
EOF
|
||||
# 将配置文件的权限改为600
|
||||
chmod 600 $next_filename
|
||||
}
|
||||
|
||||
###运行 ninjahelper###
|
||||
|
||||
当创建了名为home的handler脚本以及对应的名为home.helper的helper后,运行ninjahelper命令创建一个新的备份操作。
|
||||
|
||||
#ninjahelper
|
||||
|
||||
选择 create a new backup action(创建一个新的备份操作).
|
||||
|
||||
![](https://farm8.staticflickr.com/7467/15322605273_90edaa5bc1_z.jpg)
|
||||
|
||||
接下来将看到可选的操作类型,这里选择“backup of home directories"(备份home目录);
|
||||
|
||||
![](https://farm9.staticflickr.com/8636/15754955450_f3ef82217b_z.jpg)
|
||||
|
||||
接下来会显示在helper中设置的默认值(这里只有3个)。可以编辑文本框中的值。注意,关于”when”变量的语法,参考文档的日程安排章节。
|
||||
|
||||
![](https://farm8.staticflickr.com/7508/15941578982_24b680e1c3_z.jpg)
|
||||
|
||||
![](https://farm8.staticflickr.com/7562/15916429476_6e84b307aa_z.jpg)
|
||||
|
||||
![](https://farm8.staticflickr.com/7528/15319968994_41705b7283_z.jpg)
|
||||
|
||||
当完成备份操作的创建后,它会显示在ninjahelper的初始化菜单中:
|
||||
|
||||
![](https://farm8.staticflickr.com/7534/15942239225_bb66dbdb63.jpg)
|
||||
|
||||
按回车键显示这个备份操作的选项。因为它非常简单,可所以我们可以随便对它进行一些实验。
|
||||
|
||||
注意,“run this action now"(立即运行)选项会不顾日程表安排的时间而立即进行备份操作:
|
||||
|
||||
![](https://farm8.staticflickr.com/7508/15754955470_9af6251096_z.jpg)
|
||||
|
||||
备份操作会发生一些错误,debug会提供一些有用的信息以帮助你定位错误并纠正。例如,当备份操作有错误并且没有被纠正,那么当它运行时将会打印出如下所示的错误信息。
|
||||
|
||||
![](https://farm9.staticflickr.com/8662/15754955480_487d040fcd_z.jpg)
|
||||
|
||||
上面的图片告诉我们,备份操作讲不会成功,因为它所需要链接的远程主机似乎宕机了。另外,在helper文件中指定的目录不存在。当纠正这些问题后,重新开始备份操作。
|
||||
|
||||
需要牢记的事情:
|
||||
|
||||
- 当你新建了一个自定义脚本来处(如foobar)理特殊的备份操作时,那么你还需要编写与之对应的helper(foobar.helper)文件,ninjahelper 将通过它生成名为10.foobar(下一个操作为11,以此类推)的文件,保存在/etc/backup.d目录下,而这个文件才是备份操作的真正的配置文件。
|
||||
- 可以通过ninjahelper设定行备份操作的执行时间,或按照”when”变量中设置的频率来执行。
|
||||
|
||||
###总结###
|
||||
|
||||
在这篇文章中,我们探讨了如何从头创建我们自己的备份操作,以及如何向ninjahelper添加相关的菜单以生成对应的配置文件。通过[上一篇][2]与这一篇文章,我希望我已经给出了足够好的理由让你继续研究,或者至少应该尝试一下。
|
||||
|
||||
------------------------------
|
||||
|
||||
via: http://xmodulo.com/create-custom-backup-plan-debian.html
|
||||
|
||||
作者:[ Gabriel Cánepa][a]
|
||||
译者:[SPccman](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
||||
[a]:http://xmodulo.com/author/gabriel
|
||||
[1]:http://xmodulo.com/backup-debian-system-backupninja.html
|
||||
[2]:http://xmodulo.com/backup-debian-system-backupninja.html
|
Loading…
Reference in New Issue
Block a user