给Linux系统/网络管理员的nmap的29个实用例子

Summary: Nmap亦称为Network Mapper(网络映射)是一个开源并且通用的用于Linux系统/网络管理员的工具。nmap用于探查网络、执行安全扫描、网络核查并且在远程机器上找出开放端口。它可以扫描在线的主机、操作系统、包过滤器和远 ...

# 给Linux系统/网络管理员的nmap的29个实用例子

**Nmap**亦称为**Network Mapper**(网络映射)是一个开源并且通用的用于Linux系统/网络管理员的工具。**nmap**用于**探查网络、执行安全扫描、网络核查**并且在远程机器上**找出开放端口**。它可以扫描在线的主机、操作系统、包过滤器和远程主机上的开放端口。

<img src="content_image/album_201402_12_135412xdoqcppgx2zdwx2g.png" alt="" title="">

*Nmap 命令和示例*

我会分两个章节讲述**NMAP**的常见的使用方法，这篇是nmap系列的第一部分(译注:原文为I’ll be covering most of NMAP usage in two different parts and this is the first part of nmap serious,这里serious可能为笔误，应该为series)。在这个步骤里，我用两个没有防火墙的服务器来测试nmap命令的工作。

* 192.168.0.100 – server1.tecmint.com
* 192.168.0.101 – server2.tecmint.com

### Nmap 命令使用

```
# nmap [Scan Type(s)] [Options] {target specification}

```

### 如何在Linux上安装nmap

如今大部分Linux发行版像**Red Hat, CentOS, Fedoro, Debian** 和 **Ubuntu**已经在它们默认的包管理仓库中包含了**nmap**，可以通过[Yum](http://www.tecmint.com/20-linux-yum-yellowdog-updater-modified-commands-for-package-mangement/) 和 [APT](http://www.tecmint.com/useful-basic-commands-of-apt-get-and-apt-cache-for-package-management/)安装、管理和更新软件包。在这些发行版上安装**nmap**，可以使用下面的命令。

```
# yum install nmap      [基于 Red Hat 的发行版]
$ sudo apt-get install nmap [基于 Debian 的发行版]

```

安装了最新的nmap程序之后，你就可以跟着这篇文章中的示例指令来学习了。

### 1. 带主机名和IP地址扫描系统

**nmap**工具提供了不同的方法来扫描一个系统。在这个例子中，我使用主机名为**server2.tecmint.com**的机器执行扫描来找出所有开放端口，服务和系统上的MAC地址。

#### 使用主机名扫描

```
[root@server1 ~]# nmap server2.tecmint.com

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 15:42 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.415 seconds
You have new mail in /var/spool/mail/root

```

#### 使用IP地址扫描

```
[root@server1 ~]# nmap 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 11:04 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
958/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.465 seconds
You have new mail in /var/spool/mail/root

```

### 2. 使用"-v"选项扫描

你可以看到带"-v"选项的命令给出了关于远程机器的更多信息。

```
[root@server1 ~]# nmap -v server2.tecmint.com

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 15:43 EST
Initiating ARP Ping Scan against 192.168.0.101 [1 port] at 15:43
The ARP Ping Scan took 0.01s to scan 1 total hosts.
Initiating SYN Stealth Scan against server2.tecmint.com (192.168.0.101) [1680 ports] at 15:43
Discovered open port 22/tcp on 192.168.0.101
Discovered open port 80/tcp on 192.168.0.101
Discovered open port 8888/tcp on 192.168.0.101
Discovered open port 111/tcp on 192.168.0.101
Discovered open port 3306/tcp on 192.168.0.101
Discovered open port 957/tcp on 192.168.0.101
The SYN Stealth Scan took 0.30s to scan 1680 total ports.
Host server2.tecmint.com (192.168.0.101) appears to be up ... good.
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.485 seconds
               Raw packets sent: 1681 (73.962KB) | Rcvd: 1681 (77.322KB)

```

#### 扫描多台主机

你可以简单地通过在namap后写上它们的IP地址或者主机名来扫描多台主机。

```
[root@server1 ~]# nmap 192.168.0.101 192.168.0.102 192.168.0.103

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:06 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
Nmap finished: 3 IP addresses (1 host up) scanned in 0.580 seconds

```

### 4. 扫描整个子网

你可以通过**通配符**来使nmap扫描整个子网或者IP段。

```
[root@server1 ~]# nmap 192.168.0.*

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:11 EST
Interesting ports on server1.tecmint.com (192.168.0.100):
Not shown: 1677 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
111/tcp open  rpcbind
851/tcp open  unknown

Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 256 IP addresses (2 hosts up) scanned in 5.550 seconds
You have new mail in /var/spool/mail/root

```

从上面的输出你可以看到nmap扫描了整个子网，并给出了**网络**中**在线**主机的信息。

### 5. 使用IP地址的最后一段扫描多台主机

你可以简单地通过指定IP地址的最后8位执行扫描多台主机。比如说，这里我在IP地址为192.168.0.101, 192.168.0.102 and 192.168.0.103的机器上执行了扫描。

```
[root@server1 ~]# nmap 192.168.0.101,102,103

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:09 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 3 IP addresses (1 host up) scanned in 0.552 seconds
You have new mail in /var/spool/mail/root

```

### 6. 从文件中扫描主机列表

如果你有更多的主机要扫描，并且所有的主机都写在一个文件中，你可以直接让namp读取它并执行扫描。让我们看看要怎么做。

创建一个名为“**nmaptest.txt**”的文本文件，并定义所有你想要扫描的IP地址或者服务器的主机名。

```
[root@server1 ~]# cat > nmaptest.txt

localhost
server2.tecmint.com
192.168.0.101

```

接着，带“**iL**”参数运行nmap命令来扫描文件中所有列出的IP地址。

```
[root@server1 ~]# nmap -iL nmaptest.txt

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 10:58 EST
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 1675 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
25/tcp  open  smtp
111/tcp open  rpcbind
631/tcp open  ipp
857/tcp open  unknown

Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
958/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
958/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 3 IP addresses (3 hosts up) scanned in 2.047 seconds

```

### 7. 扫描一个IP范围

在使用nmap扫描时，你可以指定一个IP范围。

```
[root@server1 ~]# nmap 192.168.0.101-110

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:09 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 10 IP addresses (1 host up) scanned in 0.542 seconds

```

### 8. 扫描网络时排除部分主机

你可以在执行全网扫描的时候排除一些主机，或者在使用通配符扫描时使用“**–exclude**”选项。

```
[root@server1 ~]# nmap 192.168.0.* --exclude 192.168.0.100

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:16 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 255 IP addresses (1 host up) scanned in 5.313 seconds
You have new mail in /var/spool/mail/root

```

### 9. 扫描系统信息

（译注：原文这里提到了traceroute，实在并无此内容，删除之）

使用nmap，你可以检测到运行在远程主机上的操作系统和版本。要启用OS及其版本检测，我们可以使用带 “**-A**” 选项使用nmap。

```
[root@server1 ~]# nmap -A 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:25 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 4.3 (protocol 2.0)
80/tcp   open  http    Apache httpd 2.2.3 ((CentOS))
111/tcp  open  rpcbind  2 (rpc #100000)
957/tcp  open  status   1 (rpc #100024)
3306/tcp open  mysql   MySQL (unauthorized)
8888/tcp open  http    lighttpd 1.4.32
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
No exact OS matches for host (If you know what OS is running on it, see http://www.insecure.org/cgi-bin/nmap-submit.cgi).
TCP/IP fingerprint:
SInfo(V=4.11%P=i686-redhat-linux-gnu%D=11/11%Tm=52814B66%O=22%C=1%M=080027)
TSeq(Class=TR%IPID=Z%TS=1000HZ)
T1(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
T2(Resp=N)
T3(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
T4(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
T5(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
T6(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
T7(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
PU(Resp=Y%DF=N%TOS=C0%IPLEN=164%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DAT=E)

Uptime 0.169 days (since Mon Nov 11 12:22:15 2013)

Nmap finished: 1 IP address (1 host up) scanned in 22.271 seconds
You have new mail in /var/spool/mail/root

```

在上面的输出中，你可以看到运行在远程主机上操作系统的TCP/IP指纹和更详细的运行在远程主机上的特定端口和服务。

### 10. 使用nmap启用系统检测

使用选项“-O”或“-osscan-guess”同样可以发现OS信息。

```
[root@server1 ~]# nmap -O server2.tecmint.com

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:40 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
No exact OS matches for host (If you know what OS is running on it, see http://www.insecure.org/cgi-bin/nmap-submit.cgi).
TCP/IP fingerprint:
SInfo(V=4.11%P=i686-redhat-linux-gnu%D=11/11%Tm=52815CF4%O=22%C=1%M=080027)
TSeq(Class=TR%IPID=Z%TS=1000HZ)
T1(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
T2(Resp=N)
T3(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
T4(Resp=Y%DF=Y%W=0%ACK=O%Flags=Option -O and -osscan-guess also helps to discover OSR%Ops=)
T5(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
T6(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
T7(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
PU(Resp=Y%DF=N%TOS=C0%IPLEN=164%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DAT=E)

Uptime 0.221 days (since Mon Nov 11 12:22:16 2013)

Nmap finished: 1 IP address (1 host up) scanned in 11.064 seconds
You have new mail in /var/spool/mail/root

```

### 11. 扫描主机来检测防火墙

下面的命令会在远程主机上执行扫描来检测主机上是否使用了任何包过滤器或者防火墙。

```
[root@server1 ~]# nmap -sA 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:27 EST
All 1680 scanned ports on server2.tecmint.com (192.168.0.101) are UNfiltered
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.382 seconds
You have new mail in /var/spool/mail/root

```

### 12. 扫描主机以检查其受到防火墙保护

扫描检测一个主机是否受到任何包过滤器软件或者防火墙保护。

```
[root@server1 ~]# nmap -PN 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:30 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.399 seconds

```

### 13. 找出网络中在线主机

在“**-sP**”选项的bang帮助下，我们可以简单地检测网络中的主机是否在线,带这个选项后nmap会跳过端口检测和其他检测。

```
[root@server1 ~]# nmap -sP 192.168.0.*

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 11:01 EST
Host server1.tecmint.com (192.168.0.100) appears to be up.
Host server2.tecmint.com (192.168.0.101) appears to be up.
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
Nmap finished: 256 IP addresses (2 hosts up) scanned in 5.109 seconds

```

### 14. 执行快速扫描

你可以带“**-F**”选项仅扫描所有列在nmap-services文件中的端口。

```
[root@server1 ~]# nmap -F 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:47 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1234 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.322 seconds

```

### 15. 找出nmap版本

你可以使用“**-V**”选项找出运行在你机器上的nmap版本。

```
[root@server1 ~]# nmap -V

Nmap version 4.11 ( http://www.insecure.org/nmap/ )
You have new mail in /var/spool/mail/root

```

### 16. 连续扫描端口

使用“**-r**”选项而不随机排列端口的扫描顺序。

```
[root@server1 ~]# nmap -r 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:52 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.363 seconds

```

### 17. 显示主机接口及路由

你可以使用nmap的“**–iflist**”选项来列出本机的主机接口和路由信息。

```
[root@server1 ~]# nmap --iflist

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:07 EST
************************INTERFACES************************
DEV  (SHORT) IP/MASK          TYPE     UP MAC
lo   (lo)    127.0.0.1/8      loopback up
eth0 (eth0)  192.168.0.100/24 ethernet up 08:00:27:11:C7:89

**************************ROUTES**************************
DST/MASK      DEV  GATEWAY
192.168.0.0/0 eth0
169.254.0.0/0 eth0

```

在上面的输出中，你可以看到上述清单列出了你系统中的已经启用的接口及它们相应的路由。（译注：这样你就知道可以通过这些接口扫描哪些网络了）

### 18. 扫描特定端口

nmap使用不同的选项来发现远程机器上的端口。你可以用“**-p**”选项指定你想扫描的TCP端口。默认上，nmap只会扫描**TCP**端口。

```
[root@server1 ~]# nmap -p 80 server2.tecmint.com

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:12 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
PORT   STATE SERVICE
80/tcp open  http
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) sca

```

### 19. 扫描TCP端口

当然，你可以指定nmap扫描的端口类型（TCP或UDP）和端口号。

```
[root@server1 ~]# nmap -p T:8888,80 server2.tecmint.com

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:15 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
PORT     STATE SERVICE
80/tcp   open  http
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.157 seconds

```

### 20. 扫描UDP端口

```
[root@server1 ~]# nmap -sU 53 server2.tecmint.com

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:15 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
PORT     STATE SERVICE
53/udp   open  http
8888/udp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.157 seconds

```

### 21. 扫描多个端口

你可以使用“**-p**”选项来指定多个要扫描的端口。

```
[root@server1 ~]# nmap -p 80,443 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 10:56 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
PORT    STATE  SERVICE
80/tcp  open   http
443/tcp closed https
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.190 seconds

```

### 22. 扫描网络的端口范围

你也可以使用表达式指定扫描端口的范围。

```
[root@server1 ~]#  nmap -p 80-160 192.168.0.101

```

### 23. 找出主机服务版本号

我们可以使用“**-sV**”选项找出远程主机上运行的服务及其版本号。

```
[root@server1 ~]# nmap -sV 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:48 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 4.3 (protocol 2.0)
80/tcp   open  http    Apache httpd 2.2.3 ((CentOS))
111/tcp  open  rpcbind  2 (rpc #100000)
957/tcp  open  status   1 (rpc #100024)
3306/tcp open  mysql   MySQL (unauthorized)
8888/tcp open  http    lighttpd 1.4.32
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 12.624 seconds

```

#### 24. 使用 TCP ACK (PA) 和 TCP Syn (PS) 扫描远程主机

有时包过滤防火墙阻止了标准**ICMP**ping请求，在这个情况下，我们可以使用**TCP ACK**和**TCP Syn**方法来扫描远程主机。

```
[root@server1 ~]# nmap -PS 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:51 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.360 seconds
You have new mail in /var/spool/mail/root

```

### 25. 用TCP ACK扫描远程主机的特定端口

```
[root@server1 ~]# nmap -PA -p 22,80 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:02 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.166 seconds
You have new mail in /var/spool/mail/root

```

### 26. 用TCP SYN扫描远程主机的特定端口

```
[root@server1 ~]# nmap -PS -p 22,80 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:08 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.165 seconds
You have new mail in /var/spool/mail/root

```

### 27. 执行隐秘扫描

```
[root@server1 ~]# nmap -sS 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:10 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.383 seconds
You have new mail in /var/spool/mail/root

```

### 28. 用TCP SYN扫描最常用的端口

```
[root@server1 ~]# nmap -sT 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:12 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
957/tcp  open  unknown
3306/tcp open  mysql
8888/tcp open  sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 0.406 seconds
You have new mail in /var/spool/mail/root

```

### 29. 执行tcp空扫描来愚弄防火墙

```
[root@server1 ~]# nmap -sN 192.168.0.101

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 19:01 EST
Interesting ports on server2.tecmint.com (192.168.0.101):
Not shown: 1674 closed ports
PORT     STATE         SERVICE
22/tcp   open|filtered ssh
80/tcp   open|filtered http
111/tcp  open|filtered rpcbind
957/tcp  open|filtered unknown
3306/tcp open|filtered mysql
8888/tcp open|filtered sun-answerbook
MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)

Nmap finished: 1 IP address (1 host up) scanned in 1.584 seconds
You have new mail in /var/spool/mail/root

```

这些就是目前**NMAP** 的用法，我会写出更有创造性的**NMAP**的第二部分(译注:原文为 I’ll be coming up more creative options of **NMAP** in our second part of this serious,这里serious可能为笔误，应该为series)。接着，不要走开也别忘了分享你们有价值的评论。

---

via: <http://www.tecmint.com/nmap-command-examples/>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


新手教程——在Linux Mint 16中找到保存的WiFi密码

Summary: 当你使用 WEP，WPA 或 WPA2-PSK 连接到无线网络时，选择自动连接后密码将保存在Linux Mint（或任何其他的操作系统）中。试想一个情况，例如你需要提供密码给来访者，这时你需要知道WiFi密码，然而你有没有把它记下来 ...

# 新手教程——在Linux Mint 16中找到保存的WiFi密码

当你使用 WEP，WPA 或 WPA2-PSK 连接到无线网络时，选择“自动连接”后密码将保存在Linux Mint（或任何其他的操作系统）中。试想一个情况，例如你需要提供密码给来访者，这时你需要知道WiFi密码，然而你有没有把它记下来。你可以轻松地找到之前连接的WiFi密码。

在这篇**新手教程**中，我们将会指导你**如何在 Linux Mint 16 中找到保存的 WiFi 密码**。

### 在 Linux Mint 中找到保存的 WiFi 密码:

找到保存的 WiFi 密码，其实过程非常简单。点击 Menu 输入network。在其中选择**Network Connections**。

在 Network Connections 中，你可以看到所有你最近链接过的 WiFi 网络。选择你想要知道密码的一个，点击**Edit**。

在 **Wi-Fi Security** 选项卡下，选中 **Show password** 来显示密码。

通过以上步骤，你就可以得到保存的 WiFi 密码。你也可以通过类似的步骤[在 Ubuntu 中获取保存的 WiFi 密码](http://itsfoss.com/how-to-find-saved-wireless-wifi-passwords-ubuntu/)。希望这篇文章能够帮到你。

---

via: <http://itsfoss.com/find-wifi-password-linux-mint-16/>

译者：[乌龙茶](https://github.com/yechunxiao19) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


如何在Linux桌面墙纸上显示Google Calendar

Summary: Google Calendar 是时下最流行的网页应用程序之一。用户可以通过网络接口或者本地的应用程序跨设备访问或同步 Google Calendar。在 Linux 上，有很多方法可以本地访问 Google Calendar，比如用电子邮件客户端插件（  ...

# 如何在Linux桌面墙纸上显示Google Calendar

Google Calendar 是时下最流行的网页应用程序之一。用户可以通过网络接口或者本地的应用程序跨设备访问或同步 Google Calendar。在 Linux 上，有很多方法可以本地访问 Google Calendar，比如用电子邮件客户端插件（如 Evolution 或 Thunderbird ）或者用日历应用程序（如 Sunbird 或 Rainklendar）。这些方法通常都需要安装不必要的大型软件，这些软件你很可能根本不需要。

如果你只是想在本地的 Linux 上翻翻 Google Calendar 或者用它设置提醒，那么你可以考虑使用[Google Calendar 命令行接口（或者 gcalcli）](https://github.com/insanum/gcalcli)，这是一种更轻型化的方法。对于 Linux 桌面操作系统用户来说，好处不止这些，如果将 gcalcli 与[Conky](http://conky.sourceforge.net/)搭配使用你就可以把 Google Calendar 透明地融入桌面主题。

在这个教程中，我会展示**如何利用 gcalcli 和 Conky 将 Google Calendar 融入 Linux 桌面**

**[](http://www.flickr.com/photos/xmodulo/11216377436/)**

### 在 Linux 安装 gcalcli

在安装 gcalcli 之前，要确保你正在用的是 Python 2 而不是 Python 3 ，因为 Python 3 与 gcalcli 不兼容。

如果是在 Debian、Ubuntu 或 Linux Mint 上可以用下面的命令安装 gcalcli

```
$ sudo apt-get install git python-pip python-gdata python-dateutil python-gflags python-vobject python-parsedatetime
$ sudo pip install google-api-python-client
$ sudo pip install apiclient urllib3
$ git clone https://github.com/insanum/gcalcli.git
$ cd gcalcli
$ sudo python setup.py install
```

**温馨提醒**：Ubuntu 或 Linux Mint 的软件库中虽然有 gcalcli，但是这些版本并不包含其最新的特性和针对 bug 的修复。所以这里推荐按以上所述的方法由源文件构建 gcalcli。

对于Fedora 、CentOS 或 RHEL，可按如下方法安装。

```
$ sudo yum install git python-pip python-gdata python-dateutil python-gflags python-vobject
$ sudo pip install google-api-python-client
$ sudo pip install apiclient urllib3
$ git clone https://github.com/insanum/gcalcli.git
$ cd gcalcli
$ sudo python setup.py install
```

### gcalcli 的 Google 认证

为了能让 gcalcli 访问 Google Calendar ，你需要用你的 Google 帐号通过 OAuth2 认证，以使 gcalcli 获得许可来访问你的 Google Calendar。

第一次运行 gcalcli 的时候，OAuth2 认证会自动进行初始化。因此运行下面的命令开始

$ gcalcli agenda

该命令会输出如下的一个 URL 。

[](http://www.flickr.com/photos/xmodulo/11216331146/)

同时这个命令也会弹出一个指向该 URL 的浏览器窗口。如果因为一些原因，你的浏览器没有反应，你可以手动复制粘贴这个 URL 到你的浏览器中。

如果你还没有登录你的 Google 帐号，你得先登录。然后你会看到下面要求你许可 gcalcli 管理 Google Calendar 的信息。点击“Accept”即可。

[](http://www.flickr.com/photos/xmodulo/11216308465/)

### 支持 Google Calendar API

认证后，下一步就是支持 Google Calendar 的 API 访问。gcalcli 通过 Google Calendar API 访问Google Calendar 。但是，如果要使用 Google API 就必须明确设置你的 Google 帐号支持 Google API。

首先到：<https://cloud.google.com/console>。点击项目列表下的“API Project ”

转到“APIs & auth ”下面的“APIs”你会看见一个 Google APIs 列表。点击“Calendar API”的开关按钮使其能支持 API。

现在转到“APIs & auth”下的“Registered apps”那里，去注册 gcalcli app。点击最顶端的“Registered app”按钮。

[](http://www.flickr.com/photos/xmodulo/11216363656/)

填写 app 的名字（如，“My Gcalcli”），然后选择“ Native ”作为平台。点击“Registered”按钮。

这一步会生成并显示 OAuth 用户的 ID 和密码。另外关于上面提示的“You have not set up your product name（您没有设置您的产品名称）”，你可以忽略掉。

[](http://www.flickr.com/photos/xmodulo/11216593546/)

OAuth的认证结果将会保存在 ～/.gcalcli\_oauth 文本文件中。

### 用 gcalcli 在命令行中访问 Google Calendar

你现在马上就可以用 gcalcli 访问Google Calendar 了。

在你的家目录创建一个如下的 gcalcli 配置文件。将你先前获得的 OAuth 用户 ID 和 密码按下面格式输入进去。

$ vi ~/.gcalclirc

>
> --client*id='XXXXXXXXXX.apps.googleusercontent.com' --client*secret='YYYYYYYYYYYYYYYY'
>
>
>

到了这一步，你应该可以在命令行运行 gcalcli 了。

试试下面的命令，这两个命令会分别打印出一个你的 Google Calendar 的列表和今后 5 天的日程安排。

$ gcalcli list
$ gcalcli agenda

[](http://www.flickr.com/photos/xmodulo/11216465043/)

### 将 gcalcli 与 Conky 结合

最后一步就是将 gcalcli 的输出导入你的桌面主题中。为了做到这一点，你需要 Conky 这个非常强大的工具，它可以把许多信息直接显示在你的桌面主题中。

首先在你的 Linux 系统上 [安装 Conky](http://xmodulo.com/2013/12/install-configure-conky-linux.html)。

然后，在你的家目录下的某个地方( 例如 ～/bin )创建如下的脚本程序。

$ vi ~/bin/gcal.sh

```
#!/bin/sh

gcalcli --conky calw 2 |
  sed -e 's/^[(0\x71^[(B/?/g' \
      -e 's/^[(0\x78^[(B/?/g' \
      -e 's/^[(0\x6A^[(B/?/g' \
      -e 's/^[(0\x6B^[(B/?/g' \
      -e 's/^[(0\x6C^[(B/?/g' \
      -e 's/^[(0\x6D^[(B/?/g' \
      -e 's/^[(0\x6E^[(B/?/g' \
      -e 's/^[(0\x74^[(B/?/g' \
      -e 's/^[(0\x75^[(B/?/g' \
      -e 's/^[(0\x76^[(B/?/g' \
      -e 's/^[(0\x77^[(B/?/g'

$ chmod +x ~/bin/gcal.sh
```

**重要提醒**：上面脚本中的 ‘ [’ 必须是**真正的 ESCAPE 键**( 也就是说在 vi 中按 Ctrl-V 然后按 Esc )。

这个脚本程序将 VT100 转义序列转成Unicode组件图字符。这是[必须的一步](https://github.com/insanum/gcalcli/issues/97)，因为 Conky 不支持 gcalcli 使用的 ANSI 字符画。

最后，在你的家目录中创建下面的 Conky 配置文件。

$ vi ~/.conkyrc

```
alignment top_right
maximum_width 630
minimum_size 330 10
gap_x 25
gap_y 50

own_window yes
own_window_type conky
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_transparent yes
own_window_argb_visual yes
own_window_argb_value 0

update_interval 300
background no

border_width 1
default_color cornflowerblue
default_outline_color white
default_shade_color white
double_buffer no
draw_borders no
draw_graph_borders no
draw_outline no
draw_shades no
max_port_monitor_connections 64
max_specials 512
max_user_text 16384
text_buffer_size 8096
no_buffers yes
out_to_console no
uppercase no
use_xft yes
xftfont Bitstream Vera Sans Mono:size=10

TEXT
*** Google Calendar Agenda ***
${execpi 300 gcalcli --conky agenda}
${execpi 300 ~/bin/gcal.sh}
```

这个 Conky 配置文件会直接在你的桌面主题上显示你的 Google Calendar 的一个日程表和一个两个星期的时间表。

现在，你可以运行下面的命令激活 Conky。

$ conky

你应该可以在 Linux 桌面的右边看到 Google Calendar，如题图。

确认 Google Calendar 可以正常运行后，你可以将 Conky 设为在每次登录时自动启动。

### 设置 Google Calendar 提醒

gcalcli 也可以为 Google Calendar 中即将到来的事件发送一个提醒。它使用 notify-send 命令。对于 Google Calendar 提醒，你可以像下面一样设置一个工作进程。

$ crontab -l

>
> \*/10 \* \* \* \* /usr/local/bin/gcalcli remind
>
>
>

---

via: <http://xmodulo.com/2013/12/integrate-google-calendar-linux-desktop.html>

译者：[Linchenguang](https://github.com/Linchenguang) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Markdown编辑器CuteMarkEd的新功能

Summary:
CuteMarkEd 0.9.0 是一个基于QT，免费开源带实时HTML预览的markdown编辑器，目前已经释出并已提供下载了。
CuteMarkEd是一个非常有用的Qt文本编辑器，可以提供数学表达式、代码语法高亮、和markdown语法高亮的支持。 ...

# Markdown编辑器CuteMarkEd的新功能

<img src="content_image/album_201402_12_221101wdkv87g87022s7kg.png" alt="" title="">

**CuteMarkEd 0.9.0 是一个基于QT，免费开源带实时HTML预览的markdown编辑器，目前已经释出并已提供下载了。**

CuteMarkEd是一个非常有用的Qt文本编辑器，可以提供数学表达式、代码语法高亮、和markdown语法高亮的支持。

### CuteMarkEd 0.9.0 的亮点:

* 加入了一个代码补齐系统;
* 加入 "Go to Line" 菜单;
* 在查找/替换功能中加入了新的"case sensitive," "whole words only," 和 "use regular expressions" 选项。
* 支持将选中的单词加入用户词典;
* 加入了改变tab字符宽度的选项

在官方[公告](http://qt-apps.org/content/show.php/CuteMarkEd?content=158801)中查找完整的改变列表和提升。

马上下载CuteMarkEd 0.9.0:

* [CuteMarkEd 0.9.0 tar.gz](https://github.com/cloose/CuteMarkEd/archive/v0.9.0.tar.gz) [源码] [372 KB]

记住这是一个开发版本，不应该在生产机器上安装。它只用于测试目的。

---

via: <http://news.softpedia.com/news/Markdown-Text-Editor-CuteMarkEd-0-9-0-Gets-News-Options-421082.shtml>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


2013年度10大linux游戏

Summary:
随着2013年的离去，我们评点了10款去年最受喜爱的linux游戏。
得益于Value公司持续不断对平台的支持，2013年取得了巨大的成就。既有来自大工作室，例如战地系列开发者DICE的宣言，也有Creative Assembly公司关于下一 ...

# 2013年度10大linux游戏

**随着2013年的离去，我们评点了10款去年最受喜爱的linux游戏。**

得益于Value公司持续不断对平台的支持，2013年取得了巨大的成就。既有来自大工作室，例如战地系列开发者[DICE](http://www.polygon.com/2013/10/12/4826190/linux-only-needs-one-killer-game-to-explode-says-battlefield-director)的宣言，也有Creative Assembly公司关于下一年把“全面战争：罗马II”带入linux的承诺。

我们的名单既包括独立游戏，也包括迄今为止最具影响力的AAA级游戏。**这份名单并不试图包含一切，除了我们的观点**

所有的这些游戏都可以在Steam平台和/或者Ubuntu软件中心上找到，赶紧掏出钱包向你的屏幕砸钱吧！

### 盖瑞模组

 *prop or not?*

“盖瑞模组”是一个沙盘游戏，但是不为玩家设立目标，神奇隐藏在从一系列的Source引擎游戏中装载的道具和社区不断创造的各种游戏模式中。

其中一个模式是[PropHunt](http://steamcommunity.com/sharedfiles/filedetails/?id=135509255) - 一个躲猫猫的游戏模式，有两组团队，一组隐藏为地图中的不同物体，另一组试图去寻找隐藏在楼道里摇摇欲坠的文件柜。

简单而有趣，大量的游戏模式 - prop hunting（躲猫猫）、spaceship building（建造飞船）、或者machinima recording（拍摄游戏引擎电影） - 使得“盖瑞模组”成为linux狂热游戏爱好者的收藏。

* [从Steam上获取“盖瑞模组”](http://store.steampowered.com/app/4000)

### 半条命 2

 *理论物理从未如此之酷*

说到Source引擎，“半条命2”也许是这份名单里最古老的游戏，但是也是迄今为止Value公司所有作品和今年移植到linux上所有游戏中最受欢迎的游戏之一。

“半条命2”继续了该系列上一个作品中主角理论物理学家Gordon Freeman的故事：想方设法穿过被人类和外星生物毁坏的世界。从物理谜题到令人恐惧而敏捷的猎头蟹总是会出现在你前进的道路上，这场旅行*仍然*是今天最迷人的游戏经历之一。

“半条命”系列的下一个作品仍然有很多东西需要去兑现，但是从该作品移植到linux平台上接受情况上判断，linux游戏爱好者已经做好准备把雪橇和重力枪抓在手上了。

* [从Steam上获取“半条命2”](http://store.steampowered.com/app/220)

### 失忆症：猪猡的机器

当我们[在九月份](http://www.omgubuntu.co.uk/2013/09/amnesia-a-machine-for-pigs-review)评论“失忆症：猪猡的机器”时，我们发现这部作品的气氛和它的前作一样令人胆战心惊，并且值得我们跋涉过种种不算太难的谜题去探寻属于维多路亚时代的游戏场景以及蒸汽朋克式的机械装置。

最大的收获是linux首次支持该款大受欢迎游戏系列的作品，虽然Frictional Gmaes公司的开发者们一贯的对linux游戏爱好者友好。在2007和2008年，半影系列一发布他们就完成了移植的工作。

* [在Steam上获取“失忆症：猪猡的机器”](http://store.steampowered.com/app/239200)
* [在Ubuntu软件中心获取“失忆症：猪猡的机器”](https://apps.ubuntu.com/cat/applications/amnesia-amfp/)

### 地铁：最后的曙光

“地铁：最后的曙光”是最早进入linux的AAA级游戏之一，而且启动速度[相对较快](http://www.omgubuntu.co.uk/2013/11/metro-last-light-steam-linux-download)。背景设置在2034年被核毁灭的莫斯科，“地铁：最后的曙光”将世界末日后的故事集中在一个射手的第一视角里。

从鬼魅到变异蜘蛛以及巨大的变形虫都准备好让末日后莫斯科的普通一天不好过。

这款游戏并不像同类末日后题材的辐射系列那样轻松搞笑，相反它反映了人类在艰难时期所经历的残酷，一些时候让人触动。

* [从Steam上获取“地铁：最后的曙光”](http://store.steampowered.com/app/43160)

### 星际边界

你可以把“星际边界”想象成具有实际故事情节且发生在太空的“泰拉瑞亚”或者2D版的“我的世界”。有什么理由不去喜爱它呢？

和“我的世界”十分类似，你可以狩猎、挖矿、或者建造。但是和流行的3D沙盘游戏不同，你还能旅行到其他的星球并且加入一个实际的故事主线。开始时你的飞船搁浅在轨道上，你的第一项挑战包括熟悉游戏的玩法机制和寻找燃料，这些燃料使得你的飞船能够探寻程序产生的各种星球。更多的是，程序会为每一个星球产生多样的怪兽，这样在你的旅途上你将会遭遇一些奇异的生物。

“星际边界”是一款**预览版游戏**，所以你可能会发现一些不完善的机制（最起码弓和箭有一点不太好使）或者经历一到两次崩溃。尽管它仍在测试当中，但仍旧是一款有趣而有特色的游戏。

* [在Steam上获取“星际边界”](http://store.steampowered.com/app/211820)

### 0 A.D.

 *工人们正在建造建筑和采摘草莓*

尽管“0 A.D.”几年前已经就面向linux，但是因为它在2013年的所有成就，我们认为它应该在这份名单上占据一席之地。

它是名单上唯一一款免费且开源的产品，最近通过[募捐活动](http://www.omgubuntu.co.uk/2013/10/crowd-funding-success-historical-war-game-0-d)筹得了$33,251 - 足够了，他们说，准备雇佣一名程序员全职工作一年。虽然并没有达到它最初的募捐目标，但仍然获得了$33，251去支撑这个开源项目。

比任何都重要的是，它很有趣。“帝国时代”风格的实时战略游戏的粉丝们将享受历经多年打造的“0 A.D.”。虽然持续改进细节，但这款作品仍然有很长的一段路要走，还有一名志愿程序员在坚持完善它。

* [从Ubuntu软件中心获取“0 A.D.”](https://apps.ubuntu.com/cat/applications/0ad/)

### 纸箱里的坦克战争

塔防类游戏就像黑白棋或者扫雷游戏那样普遍，但是“[纸箱里的战争](http://www.omgubuntu.co.uk/2013/03/war-in-a-box-paper-tanks-ubuntu-review)”添加了一剂令人上瘾的魅力。

它独特的纸工艺美学非常起效，使得24个关卡散发出永不疲倦的魅力，让你流连忘返。每一个沉溺于即时塔防游戏的玩家都能接受这款游戏$3.99的售价。简单有趣，但又魅力十足。

* [获取“纸箱里的坦克战争”](https://apps.ubuntu.com/cat/applications/war-in-a-box-paper-tanks/)

### FEZ

 *我喜欢fezes，fezes很酷。*

我们在[九月份](http://www.omgubuntu.co.uk/2013/09/fez-indie-game-review-on-linux)评论了“FEZ”，虽然是2D游戏，但是能够变换视角，一个带着毡帽和面团宝宝一样有趣的主人公让其名声大噪。

跳跃谜题、令人头疼的视角谜题以及游戏里的幽默，所有的这些都让这款作品保持新鲜，即便你已经在一张地图上摔死了很多次或者靠近了引爆的炸弹。

* [从Steam上获取“FEZ”](http://store.steampowered.com/app/224760/)

### 欧陆风云 IV

想象一个不同的“文明”系列，更多的微观管理、更多的历史，以及一个巨大的不同：它支持linux！

和“文明”系列不一样的是，“欧陆风云”系列是历史决策游戏，虽然它并不详细的描述历史教科书。“欧陆风云IV”没有把战争延绵在几千年的历史上，它仅仅只包含了1444年-1821年。但是这并不意味着“欧陆风云”不如长跨度的“文明”系列那样有趣和迷人。

“欧陆风云IV”是实时游戏，而不是回合制的，所以你需要经常暂停以便更好地审视你不断增长的帝国或者你富裕国家的广阔的贸易路线。考虑到“大战略”游戏玩法的内容篇幅，“欧陆风云”系列可能会吓到初学者，但是如果你想在美洲殖民历史上大展手脚或者扭转拿破仑战争的局势，这些努力都是值得的。

* [从Steam上获取“欧陆风云IV”](http://store.steampowered.com/app/236850)

### 肯塔基0号路

“[肯塔基0号路](http://www.omgubuntu.co.uk/2013/02/adventures-in-magical-realism-kentucky-route-zero-act-i-review)”一直以来都是我最喜爱的游戏之一。它是名单里最富艺术气息的作品，同时它也是彰显游戏诗意的典范，当然这里不考虑2014年及以后我们所能找到所有AAA级作品。

“肯塔基0号路”给点击类冒险游戏带来了魔幻现实主义色彩，将经典的冒险游戏元素和超现实融合在一起。游戏开始时，你试图寻找一个不明就里的地址去投递古董，但是随后剧情将朝着无法预料，通常是奇特的方向发展。

这是一款探索类游戏，不是为了完成某个任务或者去营救一个总是在其他城堡里的公主。它不会被每一个人喜欢 - 也不会符合每一个人对“游戏”的定义 - 但是它却是最具意义和创造性，同时又让我享受其中的作品之一。

* [从Steam上获取“肯塔基0号路”](http://store.steampowered.com/app/231200)

---

via: <http://www.omgubuntu.co.uk/2013/12/top-10-linux-games-2013>

译者：[OnlySang](https://github.com/OnlySang) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Pear OS 系统已成为历史！

Summary:
2014年伊始就看到了又一个 Linux 发布版本的消亡。这一次是外形跟 Mac 系统很相似的 Pear OS 系统高调的说再见了。从现在开始，Pear OS 不在提供下载了。从一月三十一号起，Pear Cloud 服务也会离线。
跟2013年终止  ...

已经复活了，我用的就是pearOS12

现在pearOS Nicec0re都出了...

# Pear OS 系统已成为历史！

<img src="content_image/album_201404_03_111505vpkhn0uhvvbaypnv.jpeg" alt="" title="">

2014年伊始就看到了又一个 Linux 发布版本的消亡。这一次是外形跟 Mac 系统很相似的 [Pear OS](http://pearlinux.fr/) 系统高调的说再见了。从现在开始，Pear OS 不在提供下载了。从一月三十一号起，Pear Cloud 服务也会离线。

跟[2013年终止的 Linux 发行版本](http://itsfoss.com/year-2013-linux-2-linux-distributions-discontinued/)不一样，Pear OS 并不是因为缺乏资金或人为权利的原因而终止的，而是被不知名的大企业（我希望不是 Apple 公司 :P）所收购。他们将会把 Pear OS 作为自有产品，这就意味着社区不能对 Pear OS 创建分支（fork）及继续使用。

2014年1月20日，Pear OS 的所有者大卫·塔瓦雷斯（David Tavares）在 [Facebook](https://www.facebook.com/permalink.php?story_fbid=453625568072975&id=340980619337471&stream_ref=10) 上发布消息：

>
> 它的未来现在已经交到一个公司的手中，此刻这个公司仍然低调，想保密。他们很喜欢系统的设计理念，想把它作为自有的产品，然后继续完善和改进。我不能道出他们公司的名字，但它是一个很大的知名企业 ......
>
>
>

相同的消息在 Pear OS 的官网上也挂出来了，大卫在告别的消息中感谢用户和开发者对他们的支持。

也许这就可以解释了为什么 Pear OS 8 像一个失控的越野车一样。大卫已经很少专注在 Pear OS 的开发上了，他正忙着敲定这笔交易呢。{可以读读:[Pear OS 8 评论](http://itsfoss.com/pear-os-8-review/)}

在社区网站上我看到了很多愤怒的消息，因为它背叛了开源的“宗旨”。在一定程度上，虽然这种爆发的情绪是可以理解的，但这是大卫的权利，他有权利选择他认为的更好的未来。他表示他会转到另一个方向，也许又会开启一个新的企业。我希望他得未来式幸运的。

Pear OS 已经不在，他的用户可能会[安装 Elementary OS Luna](http://itsfoss.com/guide-install-elementary-os-luna/)，另外一个基于 Ubuntu 但有 OS X 风格外观的发布版本。

---

via: <http://itsfoss.com/pear-os-history/>

译者：[runningwater](https://github.com/runningwater) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Conky Harmattan ： 一款时尚的Linux桌面助手

Summary:
俗话说得好，力量越大，责任越大 - 至少在Conky这个Linux的多功能的系统监视工具上面是完全正确的。
一方面它特性强大，灵活性强，另一方面它的设置比较麻烦。

Conky Harmattan，一个来源于deviantArt用户Zagortena ...

# Conky Harmattan ： 一款时尚的Linux桌面助手

**俗话说得好，‘力量越大，责任越大’ - 至少在Conky这个Linux的多功能的系统监视工具上面是完全正确的。**

一方面它特性强大，灵活性强，另一方面它的设置比较麻烦。

**Conky Harmattan**，一个来源于deviantArt用户Zagortenay333的新的主题收集器，同样也不例外。虽然屏幕截图显示的是一个能打动大多数人的时尚桌面小工具，但看到了解到它的复杂配置后估计会吓跑许多人了。

为了帮助使用者，它的作者提供了**一步一步的安装指导**，如果安装过程未按正常状况进行，它也提供了一个**有用的“故障排除” 手册**告诉你如何修复一些最常见的问题。

Harmatten包括：

* **12个主题**，包括Ubuntu Touch，Numix和Elementary designs
* **4种显示模式**，包括‘mini’和‘compact‘
* **2种天气模式**
* **天气单位转换**

不像大多数Conky主题，Harmattan不会将别人屏幕的样子复制到你的屏幕上。

默认情况下Harmattan是“固定”；你需要按下ALT键并用鼠标点击和移动它。或者你也可以在设置中调整conky-config中的'x'和'y'值 - 这会浪费不少时间。此外，也别忘记修改Yahoo!天气预报小部件的地区代码，它在.conkyrc里面。

### 获取Harmattan Conky

要使用这个主题，你需要先从Ubuntu软件中心安装conky-all和curl。如果没有这些某些功能可能无法正常工作。

* [Install conky-all in Ubuntu](apt:conky-all)
* [Install curl in Ubuntu](apt:curl)

下一步，从作者deviantArt的页面上下载主题。

* [Download Conky Harmattan](http://www.deviantart.com/art/Conky-Harmattan-426662366)

之后提取Harmattan文件，按Ctrl + H在Nautilus文件浏览器查看“隐藏”的文件。

最后，根据‘Installation’指导进行。

---

via: <http://www.omgubuntu.co.uk/2014/01/conky-harmattan-for-linux>

译者：[乌龙茶](https://github.com/yechunxiao19) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


使用6款卓尔不群的Linux操作系统为你的上网本添活力

Summary:
基于Linux的操作系统的优点是它们可以根据不同的需求定制。因此，在这里我们将为您呈现6款专为上网本设计不同于其它而又有趣的顶尖发行版。

评定一款上网本的OS是否良好，主要取决于它能否物尽其用。当在闲置模式下 ...

# 使用6款卓尔不群的Linux操作系统为你的上网本添活力

>
> 基于Linux的操作系统的优点是它们可以根据不同的需求定制。因此，在这里我们将为您呈现6款专为上网本设计不同于其它而又有趣的顶尖发行版。
>
>
>

评定一款上网本的OS是否良好，主要取决于它能否“物尽其用”。当在闲置模式下,内存使用应该降到最小限度，你需要一个很好的导航系统来避免屏幕的错乱。

对于一名 Linux 爱好者来说，拥有一款对本本优化过的操作系统，同时还是基于开源技术，这该有多好啊。

<img src="content_image/album_201402_18_221120iri7yyf7ttflywzq.png" alt="" title="">

1. **AntiX** - 利用了 iceWM 窗口管理器，能帮助维持初始内存的低占用。虽然它并不像 Ubuntu, Mint 和 Elementary 那样风靡，但是它功能齐全。在底部有一个导航任务栏，桌面上的标准跨操作系统图标已经存在数年之久。AntiX 带有一系列的应用程序，其中有少部分不太适合用于上网本。
2. **SparkyLinux** - Razor-Qt 的外观和体验是非常传统的，底部有一个面板，菜单位于底部的左下角。SparkyLinux 带有一系列应用程序。开发者再次选择了 LibreOffice 套件，而不是更加轻量的 Abiword 和 Gnumeric 工具包。
3. **Lubuntu** - LXDE 桌面非常的轻量，也近乎 Xubuntu 那么容易定制。这桌面在熟悉不过了，在底部有一个面板带有菜单和系统托盘图标。不过，你可以根据自己需要多面板自定义 Lubuntu 外观。Sylpheed 邮件客户端，火狐浏览器，以及 Abiword 和 Gnumeric ，这些应用程序对于上网本来说在合适不过了。
4. **OS4** - 基于 Xubuntu。使用了 XFCE 桌面，完美定制，你可以尝试任何一种方式来工作。XFCE 是一款轻量级的桌面环境，在上网本上运行极佳。然而，你需要安装额外的限制包来播放 Flash 视频和 MP3 , 但是OS4会让这些立马工作。同时安装有 Commodore Amiga 模拟器，你如果喜欢在你的上网本上尝试一款经典复古游戏，这是个再好不过的选项。
5. **Point Linux** - 它使用了MATE桌面，使它变得更加独特。MATE 桌面最初源于 GNOME2 ,但是现在它已经凭借自身发展成一个真正优秀的桌面环境。Point Linux 外观看起来非常时尚。菜单看起来非常好，在上网本上的执行效率也很高。类似于 LXDE 和 XFCE 桌面，它也有很高的定制性。Point Linux 默认带有 4 个虚拟工作区，允许你最大限度的使用你的上网本，因此它受到内存和处理器处理显示问题的限制。
6. **Elementary OS** - 如果你在寻找一些非常时尚的东西，那么这款绝对适合你。它没有安装 Office 套件，但是你可以挑选你想要的工具。对于网页浏览器你可以用 Midori，邮件客户端可以用 Geary。安装有用来观看视频的 Totem 以及一款名为 Noise的紧凑型音频应用程序。

来源： eyerydaylinuxuser.com

---

via: <http://www.efytimes.com/e1/fullnews.asp?edid=126643>

译者：[Luoxcat](https://github.com/Luoxcat) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


每日Ubuntu小技巧——截屏

Summary:
Ubuntu 是一个功能强大的现代化操作系统，支持你进行多种任务。从使用 Libreoffice 创建和编辑文档到使用 GIMP 处理图片，Ubuntu 都是最佳选择。
如果你需要一个功能强大的操作系统来完成工作，那么你一定会考虑选择 ...

# 每日Ubuntu小技巧——截屏

Ubuntu 是一个功能强大的现代化操作系统，支持你进行多种任务。从使用 Libreoffice 创建和编辑文档到使用 GIMP 处理图片，Ubuntu 都是最佳选择。

如果你需要一个功能强大的操作系统来完成工作，那么你一定会考虑选择 Ubuntu。

你可以用 Ubuntu 来完成的另一件事情是为你的桌面截屏或者激活应用程序的窗口。你可以安装很多第三方工具来完成这些事情，但是实际没有必要，因为 Ubuntu 安装时已自带这些功能。

如果你想向别人展示如何在Ubuntu上面做一些事情，那么这个应用程序就非常有用。截屏得到的图片文件可以保存，也可以通过email发送给其他人。

使用截屏程序，需要进入到面板界面或者直接按下键盘上面的 Windows 键进入面板，Windows 键指的是键盘空格键的左边有 Windows 图标的键。

当面板打开后，找到“截屏”，然后打开这个程序(译者注：需要在已安装程序中查找或者直接在搜索框中输入“截图”)。

以下是你能够通过这个截屏程序做的操作：

* 截取整个屏幕
* 截取当前程序窗口
* 截取特定区域

如果你想在截图时将鼠标箭头一起截取，可以将在下方图片 Effects 选项中的"Include pointer"选项选中即可。

<img src="content_image/album_201402_18_221238bm8gndrk8ro0b6nk.png" alt="" title="">

当你选择好你的截屏方式后，点击图片中的‘**截图**’按钮，然后程序就会退出并且自动保存图片。

如果你想截取特定区域，需要选择该方式，当你点击‘**截图**’按钮时，鼠标会变成十字形状。此刻，你可以拖拽这个十字形状的鼠标，来得到任意你想截取的区域。在你停止拖拽鼠标后，图片会自动截取。

以上就是你在使用 Ubuntu 时，如何完成一个截图的操作。

希望能够帮助到你，欢迎再来。

享受截屏的欢乐！

---

via: <http://www.liberiangeek.net/2013/12/daily-ubuntu-tips-take-screenshots-of-your-desktop/>

译者：[liuaiping](https://github.com/liuaiping) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


树莓派使用实例之：2 Pi R

Summary: 很多人都对树莓派的硬件 hack 功能（译注：就是用户可以自己发挥想像力，把树莓派设计成自己想要的机器）感兴趣，而我看中的一点是树莓派的低耗电功能，我可以用它来代替现在在用的 Linux 服务器。在以前的文章中我  ...

# 树莓派使用实例之：2 Pi R

很多人都对树莓派的硬件 hack 功能（译注：就是用户可以自己发挥想像力，把树莓派设计成自己想要的机器）感兴趣，而我看中的一点是树莓派的低耗电功能，我可以用它来代替现在在用的 Linux 服务器。在以前的文章中我已经介绍过如何用树莓派代替这些服务器来管理我的啤酒冰箱，以及我在澳大利亚托管的一台树莓派。托管树莓派之后，我开始思考我正在使用的服务器的单点故障问题，并且考虑着手解决它。当你看到文章标题里的“2 Pi R”，你也许会想到圆周长计算公式（C = 2*Pi*R，Pi 为圆周率，R 为半径），但在本文中，“R”的意思是“冗余（redundancy）”。当然，一块树莓派并不能实现冗余，至少需要两块。下面我将介绍如何用两块树莓派实现冗余。

<img src="content_image/album_201402_21_1029369hipkkq85r9qi6p5.jpg" alt="" title="">

本文将建立一个底层框架，为俩树莓派实现冗余提供基础服务，首先我要用 GlusterFS 建立一个集群网络文件系统。在之后的文章中，我还会介绍如何利用共享存储来建立其他冗余服务。注意，虽然本文使用的是树莓派，但下面的配置操作同样适用于其他硬件。

### 配置俩树莓派

首先从树莓派官网下载最新的 Linux 发行版，并安装到两块 SD 卡中。将树莓派接到电视机上，然后按照文档提示选择内核镜像并启动系统，确认一下 SSH 服务有没有启动（默认情况下 SSH 应该是开机启动的）。你可以使用 raspi-config 命令来增加根分区空间，以便能充分利用 SD 卡的容量。确认系统正常工作、SSH 正常启动后，我可以过程访问它了。我将树莓派与电视机断开，并连到交换机上，重启系统，没有显示界面。

默认情况下，Raspbian 会通过 DHCP 获取自己的网络信息，但是在设置冗余服务时，我们希望树莓派每次开机都使用同一个 IP 地址。在我的环境中，我设置了我的 DHCP 服务器，它会在树莓派启动时为它们分配固定的 IP 地址。而你可以编辑 /etc/network/interfaces 文件：

```
iface eth0 inet dhcp
```

修改成：

```
auto eth0
iface eth0 inet static
  address 192.168.0.121
  netmask 255.255.255.0
  gateway 192.168.0.1

```

当然，要将上面的参数修改成你自己的参数，确保每个树莓派使用不同的 IP 地址。我把两个树莓派的主机名都改了，便于在（通过 SSH）登录的时候区分它们。怎么改主机名呢？以 root 权限编辑 /etc/hostname 文件。最后重启系统，确认树莓派使用了正确的网络配置和主机名。

### 配置 GlusterFS 服务器

GlusterFS 是一个用户态的集群文件系统，我选择它，是因为它配置共享网络文件系统很方便。首先选一个树莓派作为主设备（master）。在主设备上你需要做一些初始化操作，完成后，它们会自动执行故障转移。下面是我架设的环境：

```
Master hostname: pi1
Master IP: 192.168.0.121
Master brick path: /srv/gv0
Secondary hostname: pi2
Secondary IP: 192.168.0.122
Secondary brick path: /srv/gv0

```

在开始之前，登入这两个树莓派，然后安装 glusterfs-server 软件包：

```
$ sudo apt-get install glusterfs-server

```

GlusterFS 将数据保存在一些被称为“块”的设备中。一个“块”是一个系统路径，由你指定给 gluster 使用。GlusterFS 会将所有“块”组合成一个存储卷，给客户端使用。GlusterFS 会将文件的数据分割成多份，保存在不同的“块”中。所以虽然一个“块”看起来就是一个普通的路径，你最好不要在树莓派中直接操作它，而应该通过客户端访问 GlusterFS 服务，让 GlusterFS 操作。本文中我在两个树莓派中都新建一个 /srv/gv0 目录作为 GlusterFS 的“块”：

```
$ sudo mkdir /srv/gv0

```

在我的环境中，我将 SD 卡上的根文件系统共享出来，而你可能需要共享更大的存储空间。如果是这样的话，在两块树莓派上都接上 USB 硬盘，格式化后挂载到 /srv/gv0 上。编辑下 /etc/fstab 文件，确保系统每次启动时都会把你的 USB 硬盘挂载上去。两个树莓派上的“块”不一定需要有相同的名字或者相同的路径名称，但是把它们设置为相同的值也没什么坏处。

配置好“块”的路径，安装好 glusterfs-server 软件包，确认两个树莓派都正常工作，然后登入被你设为主设备的树莓派，输入“gluster peer probe”命令，将次设备加入到集群中。在我的环境中，我用 IP 地址表示第二个节点，如果你比较有个性，并且有设置过 DNS，你也可以用主机名表示这个节点。

```
pi@pi1 ~ $ sudo gluster peer probe 192.168.0.122
Probe successful

```

目前为止，我的 pi1 (192.168.0.121) 信任 pi2 (192.168.0.122)，我可以建立一个存储卷，名字都想好了：gv0。在主设备端运行命令“gluster volume create”：

```
pi@pi1 ~ $ sudo gluster volume create gv0 replica 2 192.168.0.121:/srv/gv0 192.168.0.122:/srv/gv0
Creation of volume gv0 has been successful. Please start
the volume to access data.

```

这里稍微解释一下命令的意思。“gluster volume create”就是新建一个卷；“gv0”是卷名，这个名称将会在客户端被用到；“replica 2”表示这个卷的数据会在两个“块”之间作冗余，而不是将数据分割成两份分别存于两个“块”。这个命令保证了卷内的数据会被复制成两份分别保存在两个“块”中。最后我定义两个独立的“块”，作为卷的存储空间：192.168.0.121 上的 /srv/gv0 和 192.168.0.122 上的 /srv/gv0。

现在，卷被成功创建，我只需启动它：

```
pi@pi1 ~ $ sudo gluster volume start gv0
Starting volume gv0 has been successful

```

然后我可以在任何一个树莓派上使用“volume info”命令来查看状态：

```
$ sudo gluster volume info

Volume Name: gv0
Type: Replicate
Status: Started
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: 192.168.0.121:/srv/gv0
Brick2: 192.168.0.122:/srv/gv0

```

### 配置 GlusterFS 客户端

卷已启动，现在我可以在一个支持 GlusterFS 的客户端上，将它作为一个 GlusterFS 类型的文件系统挂载起来。首先我想在这两个树莓派上挂载这个卷，于是我在两个树莓派上都创建了挂载点，并下面的命令把这个卷挂载上去：

```
$ sudo mkdir -p /mnt/gluster1
$ sudo mount -t glusterfs 192.168.0.121:/gv0 /mnt/gluster1
$ df
Filesystem         1K-blocks    Used Available Use% Mounted on
rootfs               1804128 1496464    216016  88% /
/dev/root            1804128 1496464    216016  88% /
devtmpfs               86184       0     86184   0% /dev
tmpfs                  18888     216     18672   2% /run
tmpfs                   5120       0      5120   0% /run/lock
tmpfs                  37760       0     37760   0% /run/shm
/dev/mmcblk0p1         57288   18960     38328  34% /boot
192.168.0.121:/gv0   1804032 1496448    215936  88% /mnt/gluster1

```

如果你是一个喜欢钻研的读者，你可能会问了：“如果我指定了一个 IP 地址，如果192.168.0.121当机了，怎么办？”。别担心，这个 IP 地址仅仅是为了指定使用哪个卷，当我们访问这个卷的时候，卷内的两个“块”都会被访问到。

当你挂载好这个文件系统后，试试在里面新建文件，然后查看一下“块”对应的路径：/srv/gv0。你应该可以看到你在 /mngt/gluster1 里创建的文件，在两个树莓派的 /srv/gv0 上都出现了（重申一遍，不要往 /srv/gv0 里写数据）：

```
pi@pi1 ~ $ sudo touch /mnt/gluster1/test1
pi@pi1 ~ $ ls /mnt/gluster1/test1
/mnt/gluster1/test1
pi@pi1 ~ $ ls /srv/gv0
test1
pi@pi2 ~ $ ls /srv/gv0
test1

```

你可以在 /etc/fstab 上添加下面一段，就可以在系统启动的时候自动把 GlusterFS 的卷挂载上来：

```
192.168.0.121:/gv0  /mnt/gluster1  glusterfs  defaults,_netdev  0  0

```

注意：如果你想通过其他客户端访问到这个 GlusterFS 卷，只需要安装一个 GlusterFS 客户端（在基于 Debian 的发行版里，这个客户端叫 glusterfs-client），然后接我上面介绍的，创建挂载点，将卷挂载上去。

### 冗余测试

现在我们就来测试一下这个冗余文件系统。我们的目标是，当其中一个节点当掉，我们还能访问 GlusterFS 卷里面的文件。首先我配置一个独立的客户端用于挂载 GlusterFS 卷，然后新建一个简单的脚本文件放在卷中，文件名为“glustertest”：

```
#!/bin/bash

while [ 1 ]
do
  date > /mnt/gluster1/test1
  cat /mnt/gluster1/test1
  sleep 1
done

```

这个脚本运行无限循环并每隔1秒打印出系统时间。当我运行这个脚本时，我可以看到下面的信息：

```
# chmod a+x /mnt/gluster1/glustertest
root@moses:~# /mnt/gluster1/glustertest
Sat Mar  9 13:19:02 PST 2013
Sat Mar  9 13:19:04 PST 2013
Sat Mar  9 13:19:05 PST 2013
Sat Mar  9 13:19:06 PST 2013
Sat Mar  9 13:19:07 PST 2013
Sat Mar  9 13:19:08 PST 2013

```

我发现这个脚本偶尔会跳过1秒，可能是 date 这个命令并不是很精确地每隔1秒钟打印一次，所以偶尔会出现输出时间不连惯的现象。

当我执行这个脚本后，我登入一个树莓派并输入“sudo reboot”重启这个设备。这个脚本一直在运行，如果出现输出时间不连惯现象，我不知道还是不是上面说的偶然现象。当第一个树莓派启动后，我重启第二个树莓派，确认下这个系统有一个节点丢失后，我的程序仍然能正常工作。这个冗余系统配置起来只需要几个命令，如果你需要一个冗余系统，这是个不错的选择。

现在你已经实现了 2 Pi R 组成的冗余文件系统，在我的下篇文章中，我将会加入新的冗余服务，将这个共享存储系统好好利用起来。

---

via: <http://www.linuxjournal.com/content/two-pi-r>

译者：[bazz2](https://github.com/bazz2) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


10个开源的基于WEB的文件管理器

Summary:
目前，随着因特网的广泛普及，对文件管理的需求变得更多。对很多人来说，用一个应用程序来有效管理你在网络上的文件是必不可少的。因此，下面列出你会用到的10个最好的开源的基于WEB的文件管理器。

eXtplorer: 这 ...

# 10个开源的基于WEB的文件管理器

目前，随着因特网的广泛普及，对文件管理的需求变得更多。对很多人来说，用一个应用程序来有效管理你在网络上的文件是必不可少的。因此，下面列出你会用到的10个最好的开源的基于WEB的文件管理器。

<img src="content_image/album_201402_21_1941332o6k7abv0i3u0ai2.png" alt="" title="">

1. **eXtplorer**: 这个程序为你提供了移动、复制、编辑、搜索、删除、下载和上传功能。此外，你也能用 eXtplorer 创建和提取档案，文件夹和新文件。它的主要功能是让你通过 FTP 访问文件。你可以选择 Mozilla 公共许可或者 GPL 协议。为了正常使用这个文件管理器，服务器的PHP最低版本要求为 PHP 4.3 并且必须更新JavaScript。
2. **AjaXplorer**: 绝大多数浏览器都支持这个文件管理器，并且它能很轻易地自动适应类似于手机一样的小屏幕浏览。目前iOS版的程序已经被开发出来了，安卓版的也将很快完成。要运行 AjaXplorer:，你所需要的是一个支持 PHP5.1 或者更高版本的WEB服务器来。它允许你直接从服务器流式传输视频内容。
3. **KFM**: 这个免费和开源文件管理器可以作为 FCKedition、CKeditor、Tiny MCE 之类的富文本编辑器的插件。如果您正在使用一个基于 Linux 的操作系统，那么你需要 PHP 5.2 或更高版本，而 Mac OS X 和 Windows 分别需要 MySQL 4.1 或更高版本和 MySQL 5.0 或更高版本。它有一个自己的搜索引擎，附带了一个文本编辑器，可以高亮显示语法。它还带有 mp3 播放和视频播放选项。
4. **PAFM**: 这个文件管理器可以让用户完全控制文件，还允许使用 CodePress 来编辑源代码。文件管理器的主要特色来自 CodePress，它提供了即时的语法高亮显示。
5. **QuiXplorer**: 这个文件管理器可用于在互联网和局域网管理和共享文件。它还提供了一种多用户模式，每个用户可以定制自己的设置。
6. **BytesFall** Explorer: 这个使用 PHP 和 JavaScript 编写的管理器在 GPL 下发布。它的 UI 非常类似于 Windows 资源管理器，但是它被用在 GeSHi、LiveTree、Shell 命令、FCKeditor 等项目。因为它有一组不同的功能。
7. **NavPHP**: 这个文件管理器是使用PHP和AJAX编写的，并且提供了WindowsXP风格的导航。和 QuiXplorer 一样，这个管理器也有一个多用户模式，并有自己的代码编辑器。此外，它还可以使用Deflate和Gzip来压缩传输网页。你也可以使用这个功能来以zip格式下载文件或文件夹。
8. **iDC File Manager**: 这是一个多用户系统，可以安装在基于 Linux 或 Windows 的网页服务器上。它提供了热键功能并支持社交网络，还可以监视用户活动。它的数据库是 MySQL。
9. **FileMan**: 这个文件管理器带有一个所见即所得编辑器，可以编辑和创建 HTML 文件。除了 HTML 编辑器,它还具有其他很多有用的功能。
10. **Relay**: 这个文件管理器使用 GPL 协议发布，并支持 AJAX。如果你使用大量的目录和文件,那么这个管理器对你来说非常理想。

---

via: <http://www.efytimes.com/e1/fullnews.asp?edid=126569>

译者：[kingname](https://github.com/kingname) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


每日Ubuntu小技巧——在Ubuntu中使用音乐软件“声破天”Spotify

Summary:
Spotify（译者注：下面译为"声破天"）云音乐服务已经解除了对所有用户及平台（web端/桌面端/手机端）的时间限制，现在用户可以在任何平台、任何时间无限制地听免费音乐。
起初，声破天有个时间限制，新用户自注册帐  ...

# 每日Ubuntu小技巧——在Ubuntu中使用音乐软件“声破天”Spotify

Spotify（译者注：下面译为"声破天"）云音乐服务已经解除了对所有用户及平台（web端/桌面端/手机端）的时间限制，现在用户可以在任何平台、任何时间无限制地听免费音乐。

起初，声破天有个时间限制，新用户自注册帐号时起的前六个月可以免费听音乐，但是这个限制取决于你所在的地区，不过现在所有免费帐号都可以无限制听音乐。

任何使用 Ubuntu 桌面客户端听音乐的用户也没有了之前对免费账户听音乐的限制，Ubuntu 用户可以使用他们最喜欢的桌面操作系统来享受免费音乐。

如果你现在有点小激动，但是还没有安装声破天，那么这里有一个快捷方法来指导你如何在 Ubuntu 上安装最新版本的声破天。

一些地区还不支持声破天的注册，这些地区的用户必须得想点别的办法了（译者注：需要使用代理），这是因为声破天并不是所有国家都支持。下面图片显示的是目前声破天支持的国家列表：

### 在 Ubuntu 安装上声破天

要想在 Ubuntu 上安装声破天，需要打开终端然后输入下面命令，将声破天的软件仓库添加到 Ubuntu

```
sudo apt-add-repository -y "deb http://repository.spotify.com stable non-free"

```

下一步，将声破天的仓库密钥添加到 Ubuntu，运行下面命令：

```
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 94558F59

```

最后，更新系统的软件包仓库并且安装声破天，运行下面命令：

```
sudo apt-get update && sudo apt-get install spotify-client

```

就这么简单！

在安装完声破天后，你需要打开 Ubuntu 的面板，在里面找到这个软件。打开后，尽情享受你的免费音乐吧！

---

via: <http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-use-spotify-in-ubuntu-linux/>

译者：[liuaiping](https://github.com/liuaiping) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Summary: 虽然Ubuntu 14.04 按计划不会近期发布正式版，但那些想要尝试最新软件和系统的人现在可以从Ubuntu 13.10 就地升级到 14.04了。 Ubuntu 14.04 目前计划在2014.4.17发布，但是你不必等那么长的时间来升级尝试。这个简 ...

最基本的知识，应该掌握的。

是啊

# Ubuntu 每日贴士:从Ubuntu 13.10升级到14.04(Trusty Tahr) [值得信赖的塔尔羊] ... ..

虽然Ubuntu 14.04 按计划不会近期发布正式版，但那些想要尝试最新软件和系统的人现在可以从Ubuntu 13.10 就地升级到 14.04了。

Ubuntu 14.04 目前计划在2014.4.17发布，但是你不必等那么长的时间来升级尝试。这个简要的教程给你展示了如何就地从Ububtu 13.10 升级到 14.04。

就地升级是你在已存在的Ubuntu上运行update-manager命令来升级到下一版。它允许你保留你大多数的文档，设定和一些程序。

大多数就地升级依赖于一个可靠的网络连接。没有良好稳定的连接,可能无法使用这个方法升级Ubuntu。

如果你无法使用网络升级，你还可以通过CD/DVD盘来就地升级。这个方法允许你不通过网络连接离线升级Ubuntu。

### 升级到 Ubuntu 14.04

为了升级到Ubuntu 14.04, 你首先要给你要升级的电脑做好准备工作。请运行下面的命令更新所有存在的包和内核。

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

```

完成上述更新后，你可能需要重启来在升级前应用新的包和内核。

接着，按下键盘上的**Alt+F2**键来打开Ubuntu上的命令窗口。当窗口打开后，输入下面的命令并按下**回车**。

```
update-manager –d

```

Ubuntu接着应该带着升级选项会打开update-manager。按下**Upgrade** 开始升级你的机器。

<img src="content_image/album_201404_02_175529w7ho0a7ijhsfznnw.png" alt="" title="">

就是这样!

等待Ubuntu完成下载并安装所有的更新包。当一切完成时,你会被提示重启计算机。

享受吧!

---

via: <http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-upgrade-to-ubuntu-14-04-trusty-tahr-from-13-10/>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


每日 Ubuntu 小技巧——关闭 Ubuntu 中的关机/重启确认

Summary: 对于 Ubuntu 新手来说，有很多新东西要学，但是网上很多教程不是针对新手的。 在这里，我们不走寻常路。不能说全部的教程都是为初学者准备，但至少大部分是。 这篇文章也是一篇新手教程，并且展示如何在每次执行关机 ...

实用啊，谢谢！～！！

# 每日 Ubuntu 小技巧——关闭 Ubuntu 中的关机/重启确认

对于 Ubuntu 新手来说，有很多新东西要学，但是网上很多教程不是针对新手的。

在这里，我们不走寻常路。不能说全部的教程都是为初学者准备，但至少大部分是。

这篇文章也是一篇新手教程，并且展示如何在每次执行关机、重启、注销时禁用确定框。

Ubuntu 总是配置好了一个对话框，每当你要关机、重启或者注销时提示你。

这是一个保护措施，防止你本不打算这样做却错误关机或重启。

不是所有人都想每次关机的时候被询问。忙碌的小伙伴们可能就让自己的电脑那么醒着，因为他执行了关闭命令，却忘了确认那个该死的对话框。

这个教程将会指导你每一次关机的时候如何避免那个对话框。

当这个特性被激活，你将会收到下面的提示。

>
> Are you sure you want to close all programs and shutdown your computer?
>
>
>

运行下面命令关掉它。

按下键盘上的 **Ctrl – Alt – T** 打开终端。然后敲击下面的命令

```
gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true

```

就这么简单，你再也不会被该死的确认对话框骚扰了。

如果想恢复这个对话框，敲下面的命令就可以了

```
gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown false

```

<img src="content_image/album_201402_26_192331pm7957w6yy00yvv9.png" alt="" title="">

---

via: <http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-turn-off-shutdown-restart-confirmation-in-ubuntu/>

译者：[ggaaooppeenngg](https://github.com/ggaaooppeenngg) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Summary: 这个简短教程将指导你如何在 Ubuntu 中手动安装 LibreOffice。正如你所知，LibreOffice 已经预装在 Ubuntu 中了。 这个版本是 Ubuntu 的定制版本，能够在 Ubuntu 中更好的工作。它也集成了 Ubuntu 的应用菜单和其它 ...

一条小船去远方(微博): 转发微博

安装不上，有问题

# 每日 Ubuntu 小贴士——如何在 Ubuntu 中手动安装 LibreOffice

这个简短教程将指导你如何在 Ubuntu 中手动安装 LibreOffice。正如你所知，LibreOffice 已经预装在 Ubuntu 中了。

这个版本是 Ubuntu 的定制版本，能够在 Ubuntu 中更好的工作。它也集成了 Ubuntu 的应用菜单和其它设置。

[下载页面](http://www.libreoffice.org/download/)中的 LibreOffice 官方版本和你从 Ubuntu 获得的默认版本是不同的。你获得的并不是一个非标准版本，但它稍加定制再加入到 Ubunut 软件库中。

如果你想使用 LibreOffice 的官方标准版，你必须从[下载页面](http://www.libreoffice.org/download/)手动下载。这意味着，完全卸载当前版本并从官方下载页面下载.deb包。

要做到这一点你必须先完全从 Ubuntu 中清除 LibreOffice。

### 从 Ubuntu 中卸载 LibreOffice

要在 Ubuntu 中手动安装 LibreOffice 的官方版本，必须先卸载当前版。在 Ubuntu 中要卸载 LibreOffice，运行下面的命令。

```
sudo apt-get remove --purge libreoffice* && sudo apt-get autoremove

```

运行以上命令之后，重启你的电脑。当你再次登录以后，从[下载页面](http://www.libreoffice.org/download/)下载 LibreOffice 的.deb包。

### 在 Ubuntu 中手动安装 LibreOffice

下载.deb包后，打开终端，在你的 home 目录进入 Downloads 文件夹。默认情况下，Firefox下载的文件保存在那里。

```
cd ~/Downloads

```

然后运行下面的命令来提取下载文件中的.tar.gz文件。

```
tar -xvf LibreOffice_*.tar.gz

```

解压.tar.gz文件后，你会在 Downloads 文件夹下看到一个新的 LibreOffice Deb 文件夹。要开始手动安装 LibreOffice，运行下面的命令。

```
sudo dpkg -i LibreOffice_*/DEBS/*.deb

```

运行上面的命令后，LibreOffice 将被安装并可以使用了。

接下来，进入 Unity Dash 并启动 LibreOffice。以上就是指导你在 Ubuntu 中手动安装 LibreOffice 的方法。

如果在 Ubuntu 中手动安装 LibreOffice，很有可能每次有版本更新和安全更新时你必须手动更新。

或者你仅仅希望 Canonical（Ubuntu母公司）通过它的储存库进行 LibreOffice 的安装和补丁/更新管理。

---

via: <http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-how-to-manually-install-libreoffice-in-ubuntu/>

译者：[乌龙茶](https://github.com/yechunxiao19) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Summary: Skype最近为Linux系统发布了一个小更新，包括在Ubuntu上修复PulseAudio 3.x 和 4.x 的音频噪声问题，解决由于缺失libasound2-plugins:i386和其他导致在Ubuntu/Debian 64位系统上的崩溃。 如果你正在Ubuntu上使用Skyp ...

历史也是波函数(微博): 转发微博

sunshine9D(微博): 转发微博

ZYQ-Luomio(微博): 赞！

西风冷香(微博): 转发微博

# Ubuntu 每日贴士- Skype小更新，修复64位系统上PulseAudio问题

Skype最近为Linux系统发布了一个小更新，包括在Ubuntu上修复PulseAudio 3.x 和 4.x 的音频噪声问题，解决由于缺失libasound2-plugins:i386和其他导致在Ubuntu/Debian 64位系统上的崩溃。

如果你正在Ubuntu上使用Skype，你也许想要升级来获取这些修复。这个版本除了解决这些问题没有其他新的。

这是根据changelog的完整修复列表。

* **临时解决** PulseAudio 3.x 和 4.x 音频噪声问题。
* **Bug 修复** 在打开不带表情符号的聊天时的崩溃。
* **Bug 修复** 由于缺失libasound2-plugins:i386依赖而导致的在Ubuntu/Debian 64位系统上不正常崩溃。
* **Bug 修复** 一些拨号面板数字不能正常工作。

对于Ubuntu用户,这里是如何更新。

如果你已经安装了Skype,你要在更新前先卸载它因为它会也许会创建与当前安装冲突的文件。

要从Ubuntu移除Skype,在终端上运行命令。

```
sudo apt-get autoremove --purge skype

```

在卸载完Skype,进入[Skype 下载界面](http://www.skype.com/en/download-skype/skype-for-computer/)并获取最新的Ubuntu下的版本。保存下载并在Ubuntu软件中心打开它。

因为软件中心必须下载额外的Skype包,安装也许会花费一些时间,请耐心等待。

如果你通过软件中心安装Skype时遇到了问题,进入下载文件夹并运行下面的命令来强制按照下面的命令安装Skype。

```
sudo dpkg -i skype-ubuntu*.deb; sudo apt-get -f install

```

安装完Skype后,进入Unity 面板并运行此时最新的4.2.0.14版本。

就是这样!享受吧!

---

via: <http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-skype-minor-update-fixes-pulseaudio-64-bit-issues/>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


快速技巧：如何在 Ubuntu 13.10 下启用 VLC 桌面通知

Summary: 我必须说 VLC 是目前最好的视频文件播放器。VLC 播放器有许多隐藏特性你可能还不知道。其中一个就是桌面通知。在本教程中,我们将会看到如何在 Ubuntu 13.10 和其它版本下启用 VLC 桌面通知。 在 Ubuntu 下启用 VLC  ...

海涛Idreaming(微博): 转发微博

sunshine9D(微博): 转发微博

manual_page(微博): Repost

# 快速技巧：如何在 Ubuntu 13.10 下启用 VLC 桌面通知

我必须说 VLC 是目前最好的视频文件播放器。VLC 播放器有许多隐藏特性你可能还不知道。其中一个就是桌面通知。在本教程中,我们将会看到**如何在 Ubuntu 13.10 和其它版本下启用 VLC 桌面通知**。

### 在 Ubuntu 下启用 VLC 桌面通知:

要想在 Ubuntu 下启用桌面通知,依照下面步骤进行:

#### 步骤 1:

打开 VLC 播放器。在顶部菜单内,进入 **Tools**，接着进入 **Preferences**。

**VLC->Tools->Preferences**

#### 步骤 2:

选择底部的 **All** 按钮:

#### 步骤 3:

现在从左边栏中选择 **Control interfaces**。在这里,选择 **LibNotify Notification Plugin** 并保存。这个会在带 Unity 的 Ubuntu 中启用桌面通知。

默认通知会显示4000ms也就是4秒。你可以通过控制接口下的通知选项来更改。

就这么简单！你可以在播放音频或者视频文件的时候看到通知。它与 Ubuntu 环境完美地整合在一起:

我希望这个启用桌面通知的快速技巧能使你的 VLC 更加 Ubuntu化，更加时尚化。你觉得如何?

---

via: <http://itsfoss.com/enable-desktop-notification-vlc-ubuntu/>

译者：[geekpi](https://github.com/geekpi) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


在Linux系统下玩《炉石传说：魔兽英雄传》

Summary: 《炉石传说：魔兽英雄传》是暴雪娱乐开发的一款免费的集换式卡牌游戏。花点工夫，你也可以在Linux上玩这个游戏。 像Windows平台的大多数游戏一样，《炉石传说：魔兽英雄传》也可以在Wine的帮助下在Linux上运行（Wine ...

Promise0628(微博): 转发微博

OleiLiya(微博): 。。

gamux(微博): 转发微博

robin006(微博): 转发微博

阿库满少爷(微博): 转发微博

......一直不在linux上使用wine

斯尧尧(微博): 转发微博

杳合273(微博): 并不喜欢用wine

倔强的和煦(微博): //@斯尧尧: 转发微博

万花筒蛇姬1988(微博): //@斯尧尧: 转发微博

可爱多cherish(微博): //@gamux: 转发微博

李春涛的美丽人生(微博): //@gamux: 转发微博

翁红光2013(微博): //@gamux: 转发微博

# 在Linux系统下玩《炉石传说：魔兽英雄传》

<img src="content_image/album_201403_03_132917nav71au71vz77ma7.jpg" alt="" title="">

**《炉石传说：魔兽英雄传》是暴雪娱乐开发的一款免费的集换式卡牌游戏。花点工夫，你也可以在Linux上玩这个游戏。**

像Windows平台的大多数游戏一样，《炉石传说：魔兽英雄传》也可以在Wine的帮助下在Linux上运行（Wine Is Not an Emulator）。不过只是安装一下还不够，你得稍微调整一下才行。

非常感谢[迈克尔 华盛顿](https://plus.google.com/u/0/106295000788676760101/posts/aYfwYEoThJw?cfem=1)（Google+上Gaming On Linux社区的版主）和[迈克尔 斯佩斯](http://appdb.winehq.org/objectManager.php?bShowAll=true&bIsQueue=false&bIsRejected=false&sClass=version&sTitle=&sReturnTo=&iId=29747)（winehq.org的维护者），他们整理汇总了所有需要的指令，现在玩炉石传说只是输入几个命令就好了。

首先，你得先把客户端从暴雪的网站下载下来。它是一个免费游戏，目前还处在beta测试阶段，所有人都可以下载。

然后，你得安装wine的最新开发版本。如果你在用Ubuntu（这份指引最适合Ubuntu），你可以从官方PPA源安装。只需要在终端下输入下面的命令：

```
sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.7
sudo apt-get install wine1.7-i386

```

在网站appdb.winhq.org上可以找到让它运行的所有信息。之后你得编辑几个库的一些属性。

### dbghelp

* 运行winecfg
* 选择Libraries标签，在New override for library框中输入dbghelp
* 点击Add，然后在提示框里选择Yes
* 在Existing overrides列表中点击dbghelp
* 点击Edit
* 设置成Disabled
* 点击Ok，搞定

### msvcp100

* 运行winecfg
* 选择Libraries标签, 在New override for library框中输入msvcp100
* 点击Add, 然后在提示框中选择Yes
* 在Existing overrides列表中点击msvcp100
* 点击Edit
* 设置成native,embedded
* 点击Ok，搞定

你还需要在终端里运行下面的命令，并等待运行结束。

```
winetricks wininet

```

之后你所需要做的就是双击从暴雪下载下来的exe文件，就可以开始玩了。

[Follow @thesilviu](https://twitter.com/thesilviu)

---

via: <http://news.softpedia.com/news/How-to-Play-Blizzard-s-Hearthstone-Heroes-of-Warcraft-on-Linux-424410.shtml>

译者：[zpl1025](https://github.com/zpl1025) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Summary: Untangle Next Generation (NG) Firewall 10.1是一个基于Linux的网关，带有模块化的网络应用，比如垃圾邮件过滤，网页过滤，防病毒，防间谍软件，防入侵，VPN，SSL VPN，以及防火墙。它已经发布并可以下载了。  Unta ...

Xuander是誰(微博): @suiyuinfo

豆包柠檬树(微博): mark

豆包柠檬树(微博): mark

逆行秒针(微博): 马克

丶Nature_Z(微博): 有空试试。

国产的WFiler NGF比untangle强多了。

根本不是一个级别的

# 一个纯Linux的防火墙解决方案：Untangle Next Generation (NG) Firewall

**Untangle Next Generation (NG) Firewall 10.1是一个基于Linux的网关，带有模块化的网络应用，比如垃圾邮件过滤，网页过滤，防病毒，防间谍软件，防入侵，VPN，SSL VPN，以及防火墙。它已经发布并可以下载了。**

<img src="content_image/album_201403_05_141418m273773nrngudhz2.jpg" alt="" title="">

Untangle Next Generation (NG，下一代) Firewall曾经叫Ungangle网关，但是开发者们为了更好地展现它的功能，给它改了个名字。

NG防火墙现在是许多应用的集合，根据开发者的介绍，它们会并发地侦测网络数据，极大地减少了单独应用的系统资源消耗。

NG防火墙的特性包括一个专用的过滤器、高级带宽管理功能、支持加密VPN连接、按组或者按用户来控制，以及许多的支持服务。

### Untangle Next Generation (NG) Firewall 10.1的亮点:

* 用户不能下载应用程序，整个下载系统都被移除了，所有的应用都预装在平台中。
* 支持基本的VRRP设置，在有多个Untangle服务器的时候支持热/冷高可用性。
* 网络过滤器现在在阻止https链接的时候会显示一个阻挡页面，即使没有使用专用的https检查器。
* 改善了网络过滤器的https阻挡功能（不带https检查器），在Untanble最新的版本中，https流量会先通过SNI分类。默认情况下，这个分发会根据从https网站获取的证书以及根据证书的CN来建立会话来分类，这个过程更加精确。
* 支持根据列值或任意值过滤。
* 支持通过“搜索”做做全局过滤。
* 提高了广告过滤器的性能。

请查看官方的[声明](http://wiki.untangle.com/index.php/10.1.0_Changelog)来获得完整的改动和改善列表。

### 下载Untangle Gateway Platform 10.1:

* [Untangle Gateway Platform 10.1 (ISO) 64-bit[iso]](http://download.untangle.com/untangle_1010_x64.iso) [565 MB]
* [Untangle Gateway Platform 10.1 (ISO) 32-bit[iso]](http://download.untangle.com/untangle_1010_x32.iso) [561 MB]

---

via: <http://news.softpedia.com/news/Untangle-Next-Generation-NG-Firewall-Is-a-Complete-Linux-Solution-425968.shtml>

译者：[zpl1025](https://github.com/zpl1025) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


快速技巧——如何在 Ubuntu 13.10 上安装 Google Keep

Summary: 最近，Google Keep 已经成为我在 Android 最喜欢用的笔记应用。而在 Ubuntu 的工作中, 我同样想做一些快速笔记。既然 Google Keep 可以在设备间同步, 这样 在 Ubuntu 上安装 Google Keep 也有用了。在这个快速技巧中 ...

LRC需要改变_有事留言(微博): 我在google play没搜到安卓版的google keep。。。。。。不知道是不是我手机抽了。。。。。。

爱开源的好基友(微博): 转发微博.

LRC需要改变_有事留言(微博): 原来在google installer。。。。。。

14爷CC(微博): 转发微博

# 快速技巧——如何在 Ubuntu 13.10 上安装 Google Keep

最近，Google Keep 已经成为我在 Android 最喜欢用的笔记应用。而在 Ubuntu 的工作中, 我同样想做一些快速笔记。既然 Google Keep 可以在设备间同步, 这样 **在 Ubuntu 上安装 Google Keep** 也有用了。在这个快速技巧中，我会向你展示如何在 Ubuntu 13.10 或者其它 Linux 发行版上安装 Google Keep。

如果你是一个 Google Chrome 用户，你可能知道 Google 的“桌面应用”。可以在 Chrome 在线商店的**桌面**分类中找到很多应用。不像运行在浏览器的常规 Chrome 应用，这些“桌面应用”独立运行，就像桌面应用那样。我们会看见如何将这个新的特性以原生 Ubuntu 应用形式安装 chrome 应用。

### 在 Ubuntu 13.10 上安装 Google Keep:

尽管我在这里用 Google Keep 为例子，你可以使用相同的流程来安装其它应用，像[Any.do](http://www.any.do/)或者[Pocket](http://getpocket.com/)(从上述的桌面分类中找到)。当然，**你必须在你的系统中安装了 Chrome 浏览器**。它或许无法工作在 Chromium 浏览器中。

### 步骤 1:

新建一个 Chrome 标签页。进入 Chrome 在线商店并安装 Google Keep。

### 步骤 2:

在新的标签页中，**右击** Google Keep 图标并选择 **创建快捷方式**。

### 步骤 3:

选择桌面和应用菜单。

就是这样，实际上很简单。你现在可以在 Unity Dash 中找到 Google Keep 并锁定到 launcher。即使你没有运行 Chrome，你也可以像其它的 Ubuntu 程序那样简单地运行 Google Keep。

很酷，不是么？Google 也正在计划移植 Google App Launcher 到 Linux 中。很快我们就可以使用 Google Now 桌面应用了，目前只能运用于Chrome的dev channel上。

想象一下这些，我在想为什么 Google 还没有为 Linux 开发远程 Google Drive 客户端。当然这里有一些第三方程序，像 [SyncDrive 用来同步 Google Drive，就像 Ubuntu 中的 Dropbox 那样](http://itsfoss.com/sync-multiple-google-drive-dropbox-syncdrive-ubuntu/)，但是如果有一款官方程序就更好了。

---

via: <http://itsfoss.com/install-google-keep-ubuntu-1310/>

译者：[geekpi](https://github.com/geekpi) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Summary: Linux内核3.13已经发布了。但是需要注意的是发布的最终版本除了一些小修复和来自rc8的针对ARM，PowerPC，x86,SPARC的结构更新以及对GPU和网卡的驱动更新外，并没有带来什么新的特性。  重要的更新包括：  nftables   ...

lrvy(微博): shit 更新完之后无限网慢得要死

Linux中国(微博): 回复@lrvy:[衰]是新内核的原因？ //@lrvy:shit 更新完之后无限网慢得要死

Linux中国(微博): 回复@lrvy:[衰]是新内核的原因？

lrvy(微博): 回复@Linux中国:不太清楚 不知道其他的linuxer有没有出现这种情况

杳合273(微博): 真不敢随便更新了啊//@Linux中国:回复@lrvy:[衰]是新内核的原因？ //@lrvy:shit 更新完之后无限网慢得要死

诡狐幻心(微博): 转发微博

闯车了(微博): 翻译的也太慢点了，发布都快俩月了

竹内艾默(微博): Arch 3.13没问题啊

ThomazL(微博): Forward.

比尔盖子V(微博): 你确定这是新闻……

比尔盖子V(微博): 你确定这是新闻……

# Linus Torvalds发布内核3.13，并开放Linux3.14的合并窗口

Linux内核3.13已经发布了。但是需要注意的是发布的最终版本除了一些小修复和来自rc8的针对ARM，PowerPC，x86,SPARC的结构更新以及对GPU和网卡的驱动更新外，并没有带来什么新的特性。

<img src="content_image/album_201403_05_144423uuhrhjxxsucz0h0m.jpeg" alt="" title="">

重要的更新包括：

* nftables —— iptables的继承者
* 针对高性能SSD的块层(block layer)的翻新
* 一个功耗上限(power capping)的框架来限制在Intel RAPL(Running Average Power Limit)设备中的功耗
* 优化的squashfs性能
* 默认开启AMD Radeon的电源管理和AMD Radeon GPU的自动切换
* 优化NUMA和hugepage的性能
* 默认开启TCP Fast Open(TFO)
* 支持NFC支付
* 支持High-availability Seamless Redundancy(HSR)协议
* 新驱动以及各种小改进。

### 为高性能SSD储存设计的可伸缩块层(block layer)

这次更新包括了Linux块层(block layer)的新设计，基于两个阶段的队列：第一层是为了提交IO的每个CPU中的队列，在这之后是在硬件层面的提交队列。实验表明这种双层面队列的设计可以实现每秒数百万的IO交换，压榨出了NVM-Express或PCI-E设备在多核CPU支持下的性能，在压榨性能的同时，这种设计仍能够提供块层的大众接口以及一些方便的特性。

### nftables，iptables的继承者

有一些新的iptable以及新的iptable工具可以将iptables的规则转换为nftables的字节码，而且添加新的xtable模块也是可能的。当然这些工具还提供了一些不被老的iptables设计所支持的附加的功能：对tables/chains中的改变的提示，更好的递增规则更新支持，还有开启/禁用每个table中的chains这个功能。新的nft工具有优化过的语法。

### Radeon:默认开启的电源管理功能，自动GPU切换，R9 290X Hawaii显卡的支持

电源管理提供了更优的电源消耗计划，这对一些通过电池提供电能的设备来说十分重要。而且因为电源管理提供了为GPU以及APU超频的自由，这成为了提供高端性能的要求之一。

### 限能框架

本次发布包含了针对Intel RAPL(Running Average Power Limit)设计的框架，这使在支持这个功能的设备上限制功耗成为可能。

### 对Intel MIC(Many Integrated Core Architecture)实现支持

本次更新增加了对Intel MIC的支持，一个多处理器计算机架构，包含了之前的Larrabee多核技术，Teraflops Research Chip多核芯片研究项目还有Intel Single-chip Cloud Computer多核微处理器的成果。

### 优化性能的NUMA系统

本次更新包含了很多策略可以将处理过程移至其占用内存旁，从而加快处理速度，这些新的策略也可以处理同一分页被不同进程占用以及巨大透明内存分页等情况。新的sysctls命令可以实现NUMA功能的开启/禁用以及调节。

### 优化在巨大工作量下的内存分页表的伸缩性

本次更新使用细粒度锁(finer grained locking)来优化在线程化的巨大分页工作中获取分页表的可伸缩性。看推荐的LWN文章来获取更多信息。

### 提升Squashfs的性能

Squashfs，被大量live发行版、安装包以及一些嵌入式Linux发行版采用的只读文件系统，有了一个重要的优化使得它在同步读取的工作中有了巨大的性能提升。

### 应用可以限制网络传输层的运算速率

本次更新加入了新的套接字选项，SO*MAX*PACING\_RATE，这可以为应用提供限制传输层运算速率的能力。这项功能被设计为一种bufferbloat机制来避免缓存区域被数据包塞满，它也可以被用来限制应用中的传输率。

### 默认开启TCP Fast Open(TFO)

对建立TCP连接的优化可以消除特定TCP对话的网络传输往返时间，这可以加速wab页面的显示速度。

### NFC支付支持

本次更新实现了对Secure Element的支持。一个网络连接的API可以实现开启，禁用和搜索NFC连接的安全元件(secure element)。通过一些用户空间的帮助，这可以实现NFC用来现金交易的支付。

### 支持High-availability Seamless Redundancy协议

这个功能对所有需要高可用性以及短反应时间的应用都十分适合。

引用自 <http://kernelnewbies.org/Linux_3.13>

---

via: <http://www.efytimes.com/e1/fullnews.asp?edid=127445>

译者：[ThomazL](https://github.com/ThomazL) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


马克·沙特尔沃思专访：Ubuntu——不仅仅是桌面端

Summary: 也许，他已经从Canonical公司CEO的位置退了下来，但马克沙特尔沃思仍然是最能代表Ubuntu的公众人物。 2013年年初，他在Ubuntu Edge众筹项目上栽了跟头，除了现金，他争取到了许多个人资本的支持，但是距离最终的宏大 ...

远行的心_56136(微博): 转发微博

Xuander是誰(微博): 转发微博

_yshuai(微博): Repost

寒夜的冷-Soledad(微博): 转发微博

dusKID(微博): 转发微博

# 马克·沙特尔沃思专访：Ubuntu——不仅仅是桌面端

也许，他已经从Canonical公司CEO的位置退了下来，但马克·沙特尔沃思仍然是最能代表Ubuntu的公众人物。

2013年年初，他在Ubuntu Edge众筹项目上栽了跟头，除了现金，他争取到了许多个人资本的支持，但是距离最终的宏大目标还是相差甚远。然而，他告诉我们该项目并非完全失败，并且甚至有可能被所有知名的智能手机制造商所模仿。

<img src="content_image/album_201403_05_210113so4u2soo4ou6hny5.jpg" alt="" title="">

#### 问：Ubuntu将会继续专注于桌面多长时间？

**答：**如果你有观察到我们在桌面、手机和平板上已完成的设计工作，会发现我们已经针对性地完成了一些工作，这样我们就可以将它们整合为同一个代码库。目前我们正在努力的移动端代码同时也是未来的桌面代码库：你的手机就可以给你一个桌面环境，因为它本身就包含了所有的桌面端代码。

>
> 目前我们正在努力的移动端代码同时也是未来的桌面代码库
>
>
>

实际的代码合并会在下一个主周期里的某个时间点进行 - 不会在14.04版本中，但有可能在14.10或15.04中。我们相信我们有能力赶在微软完成合并移动端和PC端的Windows系统前完成这一计划，尽管微软公司表示这是它在设计和发展上的目标。

一旦我们合并完这些代码，就会产生一个疑问：六个月的发行周期还是否有必要。因为手机和平板用户习惯于在任何时刻更新手机系统，因此我们可能会软化六个月的周期，改为随时发布更新。

#### 问：安卓和iOS已经发展得很好了，你是如何鼓舞开发者们为Ubuntu开发应用程序的呢？

**答：** 这个问题很关键。Ubuntu是各种[云计算](http://www.cloudpro.co.uk/)上的首要平台 - 例如，Instagram全部部署在Ubuntu上，人们移动设备里运行的游戏和服务后端也运行在Ubuntu云上。因此，在这方面，我们有很强烈的责任感。

我认为在Ubuntu和Windows 8之间最关键的不同是，Ubuntu基于Linux，就像安卓一样。这意味着相比Windows，为安卓平台设计的web应用和原生应用与Ubuntu的关系会更紧密一些。很多安卓开发者使用Ubuntu，在Ubutu上开发应用程序，因此对他们来说同时瞄准这两个平台开发更加容易。

#### 问：目前有任何硬件合作者有意向生产Ubuntu手机和平板吗？

**答：**我们在很多家居品牌上看到了测试设备。但这些公司都是由内部团队来决定未来如何选择，外界很难去影响他们，真正能促使他们做出决定的只有他们自己感兴趣的东西。

但是我们也发现了很多公司将Ubuntu平台部署在一些前沿的设备上。既然Ubuntu也是Linux，所以对他们而言如果想要流水线生产安卓设备相对更容易。这是一个十分强烈的兴趣信号，暗示他们正在独立地将Ubuntu安装到设备上并将其呈现给运营商。

#### 问：你是否对Ubuntu Edge没能获得资助感到失望？

**答：**的确，我感到非常失望，因为我们没有能够将它转变成现实。我持续地收到人们发来的电子邮件，在其中写到“我支持Edge，为它没有诞生感到难过”。但我还是备受打击，毕竟我们没有达到预定目标。对我们来说设备的自主生产才会是一个巨大的保证，但如果你考虑已有的手机生产商，他们可能会以较低的[资金]上限来对待Edge。

我们也看到了更多人更多地开始对融合更感兴趣。人们都在说，“是的，移动处理器正在追上桌面台式机”。苹果发布下一代iPhone [5s]时，它声称处理器是“桌面级的”，我认为这并非偶然。

要说苹果过早地幸灾乐祸，可能性不大，因此我们认为这一说法传递了一个非常清晰的信号：iPhone手机和MacBook Air笔记本电脑将会进行整合。除非你打算用这种CPU去制造一台桌面设备，否则去讨论这种CPU的机器性能是没有任何意义的。

因此，当我为我们没有成功实现Edge感到失望时，我也确信这个想法会被实现的。未来我们将重点关注如何为这个融合的世界提供最好的软件栈。

#### 问：你个人使用的是什么类型的智能手机？

**答：**我的智能手机是一台Nexus，并且我已经用Ubuntu替换掉了安卓。我也拥有一些运行着Windows Phone，iOS和安卓的设备。这样可以帮助我持续了解什么是用户期望得到的东西。

#### 问：Ubuntu电视的开发进度如何？它在2012就已经发布，但从此却杳无音讯了。

**答：** Ubuntu电视已经并入到移动端代码了。目前我们正致力于生产。这次发行可能是手机，下次是平板，最后一切都将融合在一起。我们将拥有一个独有代码库，跨越所有不同形式因素的Ubuntu经验代码库。

---

via: <http://www.pcpro.co.uk/news/interviews/386080/mark-shuttleworth-interview-taking-ubuntu-beyond-desktops>

译者：[KayGuoWhu](https://github.com/KayGuoWhu) 校对：[Mr小眼儿](http://blog.csdn.net/tinyeyeser)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Linux中的more命令－逐页显示长文本文件

Summary: 如果你已经习惯了在Linux系统上工作，那你一定会发现在Linux世界中存在着大量的文本文件。配置文件和日志文件通常都采用文本格式。这些文件通常都有很长的内容，不能在一屏内全部显示。所以在处理这种文件时，我们需 ...

轩辕青虹H(微博): 基本上用less。

轩辕青虹H(微博): 基本上用less。

用户不存在ii(微博): @我的印象笔记

woo蝦蝦(微博): 现代人都用less

董承鹏(微博): 习惯用cat | less

董承鹏(微博): 习惯用cat | less

开心Nemo(微博): 一般用more和grep， find没用过，太复杂

开心Nemo(微博): 一般用more和grep， find没用过，太复杂

乘着鱼仔去兜水(微博): [鼓掌][鼓掌] //@董承鹏:习惯用cat | less

舌尖上的中国豆腐渣(微博): 为什么不用vim[晕]

舌尖上的中国豆腐渣(微博): 为什么不用vim[晕]

Linux_cn(微博): 转发微博

開源哥_lisp(微博): 一般都是 vim 或者 cat | w3m ……//@Linux_cn: 转发微博

conquer-you(微博): //@開源哥_lisp: 一般都是 vim 或者 cat | w3m ……//@Linux_cn: 转发微博

漠o漠o(微博): 转发微博

alan是蜗牛(微博): more还是挺好用的

alan是蜗牛(微博): more还是挺好用的

雨伞_先生(微博): [呵呵][呵呵]学习了

雨伞_先生(微博): [呵呵][呵呵]学习了

我是贼胖子(微博): //@Linux_cn: 转发微博

-路-易-(微博): 一般用less

-路-易-(微博): 一般用less

用less 的人真多哦，我也习惯less的说~

新手，学习中 又吃成长快乐了。

原来more有这么多的用法

# Linux中的more命令－逐页显示长文本文件

如果你已经习惯了在Linux系统上工作，那你一定会发现在Linux世界中存在着大量的文本文件。配置文件和日志文件通常都采用文本格式。这些文件通常都有很长的内容，不能在一屏内全部显示。所以在处理这种文件时，我们需要分页显示。这时我们可以用上**more**命令。

### more是干嘛的

more是一个用来分页显示大文本文件的命令，它默认是内置在各个Linux发行版中的。

### 怎么用more

使用more命令，只需要键入:

```
$ more file_name

```

比如，我们想检查/var/log目录下的日志文件syslog，只需要键入：

```
$ more /var/log/syslog

```

然后我们可以看到**在屏幕左下角有个提示**，告诉我们当前的显示比例为0%。看上去这个文件相当大，所以第一页是全部页数的0%。使用空格键可以往下翻页，然后就可以看到提示的百分比会增加。

### 限制每页显示的行数

在执行more命令的时候，它会占用你终端窗口的全部空间用于显示。但是你可以通过参数**-数字**来限制每页显示的行数。

例如，你希望每页**限制显示12行**，可以通过下面的命令：

```
$ more -12 /var/log/syslog

```

现在，你会看到每页只显示12行，在按下空格键后，就会翻页显示后面的12行。

### Display user message

我们知道，more命令会在显示区域的左下角提示当前内容所占的百分比。对于第一次使用more命令的人来说，他或她可能会想知道怎么才能往下翻页。为了避免这种情况，我们可以在执行时增加**-d**参数，这样就会额外显示一行用户信息“[**按空格键继续，‘q‘推出.**]”

如果用户按了**‘空格‘或’q‘**之外的按键，more会显示一行帮助信息**“ [按‘h’键查看提示。]”**

如果按下h键，会显示一个帮助信息：

一个有意思的指令是**b**按钮，**b按钮允许你**退回到前面的页面。换句话说，b按钮可以允许**向前翻页**。

你可以通过左上角的**...前1页**信息来确认当前显示的是前面的页面。

### 禁止滚动

通过参数**-c**，more命令不会滚动页面，而是直接清除之前的内容，替换为下一页的内容。 With **-c** option, more will not scroll the page. It will clear the previous page and put the next page or lines there.

```
$ more -10 -c lynis.log

```

如果按下空格键，下一页会仍然有相同的大小。

### 忽略多余的空白行

使用参数**-s**来忽略多余的空白行，下面是个例子：

当我们增加参数**-s**后：

```
$ more -s doc_30.txt

```

### 查找字符串

如果你的日志文件非常大，那么在其中查找你想要的字符串并不是那么容易。more命令的查找功能可以帮你，通过参数**+/string**可以用来搜索字符串，找到的关键字会显示在第一行。比如我们要在**/var/logs/syslog**文件中搜索“**dhclient**”，那more命令的格式：

```
$ more +/dhclient /var/log/syslog

```

然后，如果要在文件中继续搜索下一个，只需要按下**/按钮**，后面跟有关键字dhclient。

### 从指定行开始显示

你也可以通过参数**+数字**来指定开始显示的行，例如，我们有一个15行的文件：

然后我们想从第5行开始显示这个文件的内容，命令看起来会是这个样子：

```
$ more +5 doc_30.txt

```

### 可以显示二进制文件吗?

**答案是不行**. more命令会提示这样的信息，例如：

### 结论

more是一个用来查看文本文件的基础工具，它不能用来显示二进制文件。通常，我们可以通过命令**man more**或者**more --help**来获取更多关于more怎么使用的信息。

---

via: <http://linoxide.com/linux-command/linux-more-command/>

译者：[zpl1025](https://github.com/zpl1025) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


如何使用Ubuntu 13.10的磁盘分析器可视化观察分区使用率

Summary: 电影、书籍、音轨这些内容类型常充斥于用户硬盘中，这方面会常常带来不同问题，例如空间缺乏并不清楚它的主要原因。 Ubuntu 13.10 默认自带磁盘分析器，一个允许用户快速并有效地通过简单的图形视图来查看占据磁盘的 ...

续日_Luxurioust(微博): Ubuntu 14.04有啥新特性吗？

Linux_cn(微博): 转发微博

# 如何使用Ubuntu 13.10的磁盘分析器可视化观察分区使用率

电影、书籍、音轨这些内容类型常充斥于用户硬盘中，这方面会常常带来不同问题，例如空间缺乏并不清楚它的主要原因。

Ubuntu 13.10 默认自带磁盘分析器，一个允许用户快速并有效地通过简单的图形视图来查看占据磁盘的文件和文件夹的工具。

运行磁盘分析器，给用户展示的是硬盘分区的标签名，大小和可用大小，单击一个条目，打开这个条目会进入专门的界面，这里是已扫描的分区和它的项目。

因此，用户可以通过侧边栏(基于文本)和右侧观察项目和它们的大小，后者担任了清晰展示已打开分区的作用；将鼠标停留在视图上会展示它的大小和含有的项目。

<img src="content_image/album_201403_07_123852xd7qtu5mtq5s9sm5.png" alt="" title="">

因此，磁盘使用分析器允许用户找出目前为被忽视的有潜在错误的文件夹，例如，用户可以立即发现显著占据分区的一个大尺寸的块（块越大代表其文件大小越大），但是，从文件名上你很难感觉到它的大小。

---

via: <http://iloveubuntu.net/how-visually-observe-partitions-usage-ubuntu-1310s-disk-usage-analyzer>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Linux 9大 Podcast

Summary: 简介 去年，我写了一篇叫Linux 的 Podcasts 和杂志，在其中，我列出了一些有关 Linux 的最好的 Podcasts 和杂志。回看那篇文章，我感觉它本来可以列出更多，因为现在有许许多多的 Podcasts 配得上那个称号。  下面的 ...

从来没听过PODCAST，要用IPHONE才能听？

用户1j9reb8yqb(微博): @weibo_@刷_粉_丝QQ我[心][1][9][6][o][1][8][1][5][心]

Linux_cn(微博): 转发微博

海的出口(微博): 转发微博

海的出口(微博): 转发微博

dusKID(微博): 转发微博

Rudey_Yao(微博): 转发微博

vztbpkkthpgf(微博): @weibo_@刷_粉_丝QQ我[心][1][9][6][o][1][8][1][5][心]

互联网这些事(微博): 转发微博

larrick的空间(微博): 轉發微博

-z世炀kz(微博): 求学霸帮一把，遇到个Linux难题，学霸求解[许愿]。题目详细情况是http://t.cn/8FFInf6

南国-利剑(微博): 转发微博

# Linux 9大 Podcast

### 简介

去年，我写了一篇叫“[Linux 的 Podcasts 和杂志](http://www.everydaylinuxuser.com/2013/05/linux-podcasts-and-magazines.html)”，在其中，我列出了一些有关 Linux 的最好的 Podcasts 和杂志。回看那篇文章，我感觉它本来可以列出更多，因为现在有许许多多的 Podcasts 配得上那个称号。

<img src="content_image/album_201403_07_124722gjoa7slaon2nn4ej.png" alt="" title="">

下面的这个列表列出的是我最喜欢的基于 Linux 的 podcasts。排名不分次序，我认为它们都有各有特点。

现在你肯能会认为只有9个会有点奇怪，为什么不是10个呢？当然所有这些事情都是10个10个地出现。那么如果我加上第十个，那么这就不再是一个货真价实的列表了，因为我只有听过9个 Podcasts。但是，你们不要犹豫在评论栏里加上你们自己的 Podcast。

### 1. Linux Action Show

官网：<http://www.jupiterbroadcasting.com/tag/linux-action-show/>

The Linux action show 由 Chris Fisher 和 Matt Hartley 来主持。

你可以在线观看节目又或者下载或收听 MP3 格式的节目。

他们的节目都非常有趣，并且主持们都非常乐观和热情。

节目包括新闻、精选、回馈和一个特色主题。

同时节目还包括发掘 Linux 社区所发生的事情，并且你还会听到你以前从来都没有听过的软件。

节目的时间相对比较长，持续接近 2 个小时。这是一个非常适合你在工作时候收听的好节目。

### 2. Linux Unplugged

官网：<http://www.jupiterbroadcasting.com/show/linuxun/>

我没有骗你，这又是与他们两个有关。

只不过 Linux Unplugged 是 Linux Action Show 的不太正式版，同时 Chris 和 Matt 希望在 Linux 环境之外尝试新的东西。嘉宾和聊天室用户可用在节目中直接地互动。

看直播远比看重播要爽，同样，他们也会在每个星期传递相同的信息。

### 3. The Linux Link Tech Show

官网：<http://tllts.org/>

The Linux Link Tech Show 是一个不算很正式的节目，基本上，他是由一群讨论有关常见的 Linux 和生活的人组成的。

同样这个节目也大概持续 2 个小时，并且比听叽叽喳喳的 DJ 谈论他们上星期喝得多醉有趣得多。

根据网站，主持每个星期都会有稍微的不同，他们有 Linc，Dann，Allan，Pat，Rich，Dan 和 Davey。

我听了他们上一期的节目，他们讨论了有关 Linux，GNU/Linux 等等的内容。当然，他们在下一期的节目中也会是不断地讨论讨论讨论。

### 4. Everyday Linux

官网：<http://elementopie.com/everyday-linux-episodes>

Everyday Linux 是由 Seth Anderson，Chirs Neves 和 Mark Cockrell 主持，并且讨论与 Linux 有关和一些非 Linux 的话题。

同样，节目时常大约 2 小时，内容涵盖 Linux 新闻，发行版和软件。

在上一期节目中，他们谈论了有关 Plex 的文章，专利流氓和一个怀旧游戏网站。在其中一节，一个家伙谈论了 Linux 在这一年是否完成了它的一些目标。

许多的讨论都是关于 Linux 当经是否在市场上占主导位置，并且是否包含台式电脑。没有人能决定 ChromeOS 和 Android 是否只使用 Linux 作为基础和我们应该使用 Linux，GNU/Linux 等等哪一种术语的古老的题目。

我经常在一些文章末尾得到一些评论，指明发行版并不是操作系统，它是发行版又或者 Linux 不是一个操作系统，GNU/Linux 才是。这看来似乎是永不结束的讨论。

在好几个月之前，我很幸运我能够以[嘉宾的身份在 Everyday Linux podcast](http://www.everydaylinuxuser.com/2013/08/everyday-linux-user-and-everyday-linux.html) 中登场。

### 5. Going Linux

官网：<http://goinglinux.com/>

Going Linux是由 Larry Bushey 和 Bill Smith 主持。

这节目显得更加的正式，并且主持们对于 Linux 都有很深厚的认识。

节目大部分的时间都是由大众来提问题，然后主持们尽可能简洁地回答他们的问题。

这个节目非常值得收听，因为通过它你至少能够学到一点东西。

它比之前的节目平均要短 40 分钟。

### 6. Ubuntu UK Podcast

官网：<http://podcast.ubuntu-uk.org/>

Ubuntu UK Podcast 是一个英国的 Podcast，由 Laura Cowen，Mark Johnson 和 Alan Pope 主持。

这个节目会快速地调侃一下有关 Linux 的事情，但是大多时间都是关于 Ubuntu。

节目开始是一些普通 Linux 新闻的摘要，然后接着就是有关 Ubuntu 的信息。

通常节目中都会有一个特色环节，并邀请嘉宾，辅导和命令行爱好者。完事之后会有一个反馈环节。

节目通常只有 30 分钟，你会觉得时间过得飞一般快。

### 7. Linux Outlaws

官网：<http://sixgun.org/linuxoutlaws>

由 Fabian Scherschal 和 Dan Lynch 主持的 Linux Outlaws，是最具娱乐气氛的 Podcast 之一。

你必须做好准备，因为你随时都会听到一连串的不雅用语，我说的是随时都会听到。

就像一些很好的搭档一样，那里有滑稽的配角和戏剧演员。Dan 扮演配角，而 Fab 则扮演戏剧天才。

节目时长从 1 小时到 2 个半小时不等。

节目通常会谈论过去一个星期有关 Linux 的新闻，其中覆盖了从发行到信息安全等各方面的内容。

绝对值得收听，尤其如果你不是一个特别容易被冒犯的人。

### 8. Linux Luddites

官网：<http://linuxluddites.com/>

Linux Luddites 是另外一个英国的 Podcast，由 Joe 和 Paddy 主持。

我在上星期只听过一次他们的节目，但却印象深刻。

节目内容包括这个星期的新闻（如果你像我一样收听多个 Podcasts，那你完全可以总结出听过数遍相同的信息之后会怎么样），简单地讨论从 Distrowatch 获取的发行版，反馈，等等。

在节目中我听到了以一个新用户角度来看 Debian 且相当深入的内容。

他的观点是关于让人迷惑的 Debian 网站，安装包和其他 Debian 的特色。

### 9. Mintcast

官网：<http://mintcast.org/>

Mintcast 是由 Rob，Scott 和 James 主持的并且与 Ubuntu UK Podcast 非常相像的 Podcast，不过他主要面向的是 Mint 的用户。

节目内容包括新闻和常见的特色环节例如谈论 LXDE 或 XFCE 等等。

我必须承认的是我并没有常常收听这个 Podcast 因为我不是一个 Mint 的用户。

### 总结

Podcasts 更多的是娱乐和推送新闻，并且相对于收听普通的收音机，我更宁愿选择收听 Podcasts。

感谢阅读！

---

via: <http://www.everydaylinuxuser.com/2014/02/top-9-linux-podcasts.html>

译者：[hyaocuk](https://github.com/hyaocuk) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Unity控制中心默认会在Ubuntu 14.04 出现

Summary: 几周前，开发者声称会在Ubuntu 14.04从系统设置中(GNOME 控制中心)复刻一个Unity控制中心到系统设置程序中。 本质上来说，Unity控制中心会用在即将到来的Ubuntu 14.04 上，复刻过程是为了避免与Ubuntu风格的GNOME--U ...

sunshine9D(微博): 转发微博

上火的快乐生活(微博): 转发微博

Elementary-Luna(微博): 转发微博

Elementary-Luna(微博): 转发微博

# Unity控制中心默认会在Ubuntu 14.04 出现

几周前，开发者[声称](http://iloveubuntu.net/ubuntu-developers-registered-unity-control-center-launchpad-fork-gnome-control-center-so-we-can)会在Ubuntu 14.04从系统设置中(GNOME 控制中心)复刻一个Unity控制中心到系统设置程序中。

本质上来说，Unity控制中心会用在即将到来的Ubuntu 14.04 上，复刻过程是为了避免与Ubuntu风格的GNOME--Ubuntu GNOME--产生问题。

Unity控制中心 14.03已经通过常规升级登陆到了Ubuntu 14.04上，现在已经默认在Ubuntu桌面调整中启用。

Unity控制中心，除了它的名字外，与原来的系统设置一样保持了相同的外观、感受和特性，展示了它相同的外观和功能（还在开发中）。

意味深长的是，启动Unity 14.04控制中心，用户会面对已经熟悉的系统设置窗口和它含有的入口。

<img src="content_image/album_201403_08_222545x20whbbxqbvlw11h.png" alt="" title="">

根据开发者说法，复刻过程是为了保持基于GNOME的系统设置程序能够在Ubuntu 14.04 LTS上使用，而接下来的Ubuntu版本可能会使用基于Qt/QML的系统设置。

---

via: <http://iloveubuntu.net/unity-control-center-arrived-ubuntu-1404-default>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Ubuntu 14.04 中系统设置中加入了显示/隐藏用户选项

Summary: 如你所知, Ubuntu目前在开发中, 在未来的几个月中会发布即将到来的Ubuntu 14.04。 通过常规升级最近给Ubuntu 14.04 带来了一些小的特性,允许你简单地在Unity面板上显示/隐藏用户名。 这意味着如果你进入系统设置--- ...

这个没必要说吧

道法自然無量雲(微博): 转发微博

一片静雪(微博): 转发微博

上火的快乐生活(微博): 转发微博

Elementary-Luna(微博): 转发微博

魏少钎(微博): 最近我已频频被Ubuntu刷屏

# Ubuntu 14.04 中系统设置中加入了显示/隐藏用户选项

如你所知, Ubuntu目前在开发中, 在未来的几个月中会发布即将到来的Ubuntu 14.04。

通过常规升级最近给Ubuntu 14.04 带来了一些小的特性,允许你简单地在Unity面板上显示/隐藏用户名。

这意味着如果你进入系统设置--->用户账户,你会看到新的在菜单栏显示我的登录名选项,默认没有选择。

如果你选择了它,你的用户名会显示在Unity面板上,如果你没有选择,顶部面板不会显示用户名。

<img src="content_image/album_201403_08_222851fr94t5t9zr184tt5.png" alt="" title="">

这个选项很方便，比如，你想要截一张带有你用户名的桌面截图，你只要单击选项，不久之后你就可以通过禁用它来整理你的Unity面板而不必使用非默认的程序。

---

via: <http://iloveubuntu.net/ubuntu-1404s-system-settings-received-showhide-username-option>

译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


树莓派使用实例之：2 Pi R 第二篇：Web服务器

Summary: 在我的上一篇文章中讲过如何做一个高可用系统：两个树莓派布署上 GlusterFS 集群文件系统，就变成一个容错文件服务器了。在这篇文章中我们会基于这个高可用系统构建另一个容错服务：建立一个简单的 Web 服务器集群。 ...

吸血鬼不怕辣椒水(微博): 转发微博

chen23547(微博): 树莓派的IO性能足够？

Hierarch1314(微博): 转发微博

年轻的布尔什维克(微博): 转发微博

adofirst(微博): 转发微博

sunshine9D(微博): 转发微博

Ryan_XM(微博): mark

The_Enternal(微博): 转发微博

Ahe_silence(微博): 转发微博

Ahe_silence(微博): 转发微博

盛时儒理败时道(微博): mark

配图尤其漂亮

# 树莓派使用实例之：2 Pi R 第二篇：Web服务器

在我的上一篇[文章](http://linux.cn/article-2587-1.html)中讲过如何做一个高可用系统：两个树莓派布署上 GlusterFS 集群文件系统，就变成一个容错文件服务器了。在这篇文章中我们会基于这个高可用系统构建另一个容错服务：建立一个简单的 Web 服务器集群。

<img src="content_image/album_201403_09_230131jwz6642cuj6466s2.jpg" alt="" title="">

可能你没有看过我的上一篇文章，那我就在这里简单回顾一下上次的内容。我有两个树莓派：Pi1 和 Pi2。Pi1 的 IP 地址为 192.168.0.121，Pi2 的 IP 地址为 192.168.0.122。我把它们组合成为 GlusterFS 集群系统，共享一个存储卷，卷名为 gv0。并且这个 gv0 被挂载在两个树莓派上，挂载点都是 /mnt/gluster1，这样一来，两个树莓派能同时访问到这个共享卷。最后我测试了下系统的容错性，将共享卷挂载到第三个物理机上，并执行共享卷上的一个简单的脚本：打印系统时间并输出到 gv0 上的一个文件内，然后轮着关掉两台树莓派，检测这个冗余系统是否还能用。

现在我手上有这个经过检验的存储系统，我要做的是把这个系统做成有容错功能的 Web 服务器集群。树莓派的 CPU 处理速度和内存资源都不是很高，好在对付一个静态 Web 服务器已经是绰绰有余了。我故意把这个例子做得非常简单，因为我觉得如果你能摆平这个简单的例子，你也能处理复杂一点的问题了。

### 安装 Nginx

虽然我也比较喜欢 Apache，但在资源有限的情况下，像 Nginx 这样功能全、性能高、资源占用少的 Web 服务器是比较理想的选择。在 Raspbian 的默认源中存在 Nginx，所以我只要登入一台树莓派并且输入以下命令：

```
$ sudo apt-get update
$ sudo apt-get install nginx

```

Nginx 安装好后，创建配置文件 /mnt/gluster1/cluster ，内容如下：

```
server {
  root /mnt/gluster1/www;
  index index.html index.htm;
  server_name twopir twopir.example.com;

  location / {
        try_files $uri $uri/ /index.html;
  }
}

```

注意：我这里把服务器命名为“twopir”，你可以根据自己爱好命名你的网站。另外我把 Web 服务器的根目录设置为 /mng/gluster1/www。这样，我就能把我的静态文件放在这个共享存储系统内，从而让两个树莓派主机都访问到它们。

现在删除默认的 Nginx 配置文件，将上面配好的配置文件作为 Nginx 的配置文件。在 Debian 系统中，Nginx 将它的配置文件像 Apache 一样放在 sites-available 和 site-enabled 两个目录下面。虚拟主机配置文档放在 sites-available 中，而 sites-enabled 目录包含了你想生效的配置文件的软链接。

```
$ cd /etc/nginx/sites-available
$ sudo ln -s /mnt/gluster1/cluster .
$ cd /etc/nginx/sites-enabled
$ sudo rm default
$ sudo ln -s /etc/nginx/sites-available/cluster .

```

现在我已经放好了配置文件，但系统还不存在上面所说的 Web 服务器根目录。下一步就是创建目录 /mnt/gluster1/www，并复制 index.html 文件进去。当然你也可以建立自己定义的 index.html 文件，但先复制一个已有的文件是个不错的选择：

```
$ sudo mkdir /mnt/gluster1/www
$ cp /usr/share/nginx/www/index.html /mnt/gluster1/www

```

重启 Nginx 服务：

```
$ sudo /etc/init.d/nginx restart

```

现在去 DNS 服务器为192.168.0.121的树莓派配置记录。你可以根据自己的情况配置你自己的域名和 IP 地址。现在在浏览器上输入 http://twopir/ 然后出现默认的 Nginx 首页。如果你查看下 /var/log/nginx/access.log 文件，你可以看到点击网页留下的记录。

Nginx 能正常工作后，配置第二个树莓派。因为我们已经将配置文件都放在 GlusterFS 共享目录下，我们现在要做的只是安装 Nginx，创建相关的软链接，重启 Nginx：

```
$ sudo apt-get update
$ sudo apt-get install nginx
$ cd /etc/nginx/sites-available
$ sudo ln -s /mnt/gluster1/cluster .
$ cd /etc/nginx/sites-enabled
$ sudo rm default
$ sudo ln -s /etc/nginx/sites-available/cluster .
$ sudo /etc/init.d/nginx restart

```

### DNS 服务器上配置两条 A 记录

现在两个主机共享同一份文件，下一步是设置冗余系统的关键步骤。虽然你完全可以设置一个类似心跳的服务用于轮询检测哪个树莓派的 Web 服务是开启的，但这里有个更好的方法：给同一个主机名指定两个 DNS 的 A 记录，分别指向你的两个树莓派（译注：A 记录就是将域名转化为 IP 地址的记录，DNS 包含很多记录方式，如 A 记录、PTR 记录、MX 记录等等），这就是传说中的 DNS 负载均衡，DNS 访问主机时，如果主机名对应多个 IP 地址，DNS 会随机返回这些 IP 地址的顺序：

```
$ dig twopir.example.com A +short
192.168.0.121
192.168.0.122
$ dig twopir.example.com A +short
192.168.0.122
192.168.0.121

```

因为返回随机的顺序，用户可以均匀地往两台服务器发送请求，这个负载均衡的机制就是由 DNS 服务器的多条 A 记录来提供。相对于 DNS 的负载均衡技术，我更感兴趣的是 Web 浏览器如何处理请求失败的情况。当浏览器通过网页主机获得两条 A 记录，并且第一条记录所在的主机当机了，浏览器几乎立刻就切到另一条记录上。切换效率快到用户根本察觉不出来，这可比传统的心跳线轮循请求主机快多了。

所以在你正在使用的 DNS 服务器上添加你的树莓派集群的两个 IP 地址，然后试试 dig 命令，就像我在上面使用过的一样，你也应该能得到两个 IP 地址。

当你为同一个域名设置好了两个 A 记录，这套集群就可以提供容错服务了。打开两个终端并分别登录到两个树莓派，运行 tail -f /var/log/ngnix/access.log 命令，你可以监视 Web 服务器的访问情况。当你通过浏览器访问网页时，你可以看到在一台树莓派上产生了访问日志，而在另外一台的日志里什么也没有出现。现在你可以刷新几次页面，当你觉得你对能成功访问到 Web 服务器感到满意了，你可以重启响应你请求的那台树莓派，然后再刷新几次页面。也许浏览器上会出现一个短暂的不可访问信号，但会马上重定向到第二台树莓派上，你会看到一样的页面，并且你能通过终端访问日志了解具体情况。当第一台树莓派启动后，你在浏览器上根本不会察觉到。

（译注：如何处理DNS 轮询的多个IP地址，不同浏览器有不同的做法，目前译者收集到的资料显示，只有[mozilla的netlib库](http://www-archive.mozilla.org/docs/netlib/dns.html)支持自动重连下一个IP地址的做法。如果读者知道更多的浏览器对DNS轮询的处理策略，请评论给我们。其实，以译者的态度看，DNS轮询根本就不能算作是高可用性的方案，勉强可以算作是负载均衡方案，建议考虑更可靠的其它方案。）

随机重启一台树莓派，只要有一台在线，Web 服务器就能提供服务。这是一个非常简单的案例，你可以把你其它的静态文件放到 /mnt/gluster1/www 上，为你提供真正有价值的服务，现在好好享受你的低成本容错集群 Web 服务器吧。

---

via: <http://www.linuxjournal.com/content/two-pi-r-2-web-servers>

译者：[bazz2](https://github.com/bazz2) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


2014年度Linux职场报告：对Linux专家的需求持续旺盛

Summary: Linux人才正在越来越多地占领人事经理的优先列表！ 2014年2月19日，通过对人事经理们和Linux专家的调查，2014年度职场报告正式发布，纽约和旧金山的人事经理们正跃跃欲试，计划在Linux求职市场中网罗招募更多的Linux ...

薄荷开源网(微博): 好事！只有和饭碗等切身利益挂钩，才是最好最有效的Linux推广方式！

薄荷开源网(微博): 转发微博

好现象，看来要努力学习linux了

Fei_Zodiac(微博): 看好linux

Fei_Zodiac(微博): 看好linux

伦Michael(微博): 表示我也想学好Linux

孟勇健(微博): [汗][汗][汗]

加菲猫吃铜锣烧(微博): 转发微博

KK大魔王1v5(微博): 嘿嘿，高级网管出头之日！

天天游泳的鱼儿(微博): [围观]

# 2014年度Linux职场报告：对Linux专家的需求持续旺盛

*Linux人才正在越来越多地占领人事经理的优先列表！*

2014年2月19日，通过对人事经理们和Linux专家的调查，2014年度职场报告正式发布，纽约和旧金山的人事经理们正跃跃欲试，计划在Linux求职市场中网罗招募更多的Linux技术人才。旺盛的需求使得Linux行业的薪资已经超过行业平均水平，并且多数Linux专家都认为Linux技术正帮助它们的职业生涯走的更长远。

<img src="content_image/album_201403_11_101714a96eetg0ssese0se.png" alt="" title="">

最新发布的[2014年度Linux职场报告](https://www.linuxfoundation.org/publications/linux-foundation/linux-adoption-trends-end-user-report-2014)数据来自1100名人事经理和4000名Linux专家，从商业化职场需求，到个人的主观努力，再到吸引大多数Linux专家的工作动机，报告对Linux的职业前景进行了深入的分析观察。

Dice董事长Shravan Goli说：“企业越来越意识到Linux正在成为商业发展的核心部分。相对的，人事经理们也正在越来越多地把offer发给拥有Linux技术的专业人才。而这些专家正在从事的项目正是企业想要洞察的未来。”

这是Dice公司和Linux基金会联合推出的第三个年度Linux职场报告。Dice是一家业内领先的专为技术和工程专家寻找工作的网站；而Linux基金会则是一个非盈利性组织，对Linux的发展和协作开发提供支持。最终发布的年度报告希望可以帮助行业人士了解Linux职业发展趋势的源头所在，同时帮助公司找到最佳途径来招聘或留住关键的Linux人才。

Linux基金会执行董事Jim Zemlin说道：“尽管对Linux人才的需求持续增长，但是市场对于经验丰富的Linux专家来说仍然有较大的人才缺口。对此，今年Linux职场报告有明确描述。同时，今年的报告表明，对于开发者和系统管理员来说，有无限的机会可以发挥自身价值或是寻求学习机会。对于Linux专家来说，未来无比光明！”

报告中的一些关键统计：

* **越来越多的人事经理计划开始招收Linux人才。**77%的人事经理已经把“招聘Linux人才”列入了2014年的优先清单，去年这个比例为70%。其中9%到10%的人事经理计划半年内就要招到一位Linux专家。
* **人事经理所要招收的Linux专家数量也在不断增加。**过去6个月来，46%的人事经理扩充了他们关于Linux专家的招聘计划，这与去年2013年相比增加了3个百分点。
* **展望Linux的工作前景。**86%的Linux专家表明，Linux给了他们更多的工作机会，64%的人说他们选择Linux工作正是因为Linux在行业基础中无处不在的广泛性。

2014年度Linux职场报告还包括：“为何现在的雇主都在寻求Linux人才”、“最能吸引Linux专家们的是什么”等等其他重要的发现，[点击这里下载完整的报告](http://techhub.dice.com/2014-DHX_linuxJobReport_LP.html)。

### 2014年度Linux职场报告统计数字

2013年11月到12月间，Dice公司和Linux基金会同时对人事经理和Linux专家关于Linux工作中的倾向和需求进行了调查。接受调查的人事经理来自大企业、中小型公司、政府组织及相关部门，受调查总人数超过1100人，所属单位58%来自北美，21%来自欧洲，7%来自亚洲，4%来自南美，而非洲、墨西哥、中美洲和日本各占2%，中东占1%，还有不到1%来自澳大利亚、新西兰。受调查对象要求去年至少招聘了一名Linux专家，或者计划在2014年有这样的招聘计划才能接受调查，问卷调查采用多选。另外，超过4000名Linux专家接受了调查，其中34%的人表示它们作为Linux专家已经工作了10年甚至更久。

### 关于Dice

技术成就企业，而技术来源于人才。Dice能迅速为技术专家和雇主提供机会、规划与联系。了解更多，访问[www.dice.com](http://www.dice.com/)。

### 关于Linux基金会

Linux基金会是一个非营利性组织，意在推动Linux的成长和协调软件开发。成立于2000年，组织由Linux发明人Linus Torvalds发起，主要促进、保护、发展Linux操作系统，并通过分配基金会成员与开源社区资源来协调Linux软件开发。Linux基金会为合作与教育提供中立论坛，通过举办合作项目，包括LinuxCon在内的Linux会议，发起原创性研究，推动Linux标准和软件协作开发的发展。了解更多，点击[www.linuxfoundation.org](http://www.linuxfoundation.org/)。

注册商标：The Linux Foundation, Linux Standard Base, MeeGo, OpenDaylight, Tizen和Yocto Project都属于Linux基金会的注册商标。OpenBEL是OpenBEL集团的注册商标。Linux是Linus Torvalds的注册商标。

---

via: <http://www.linuxfoundation.org/news-media/announcements/2014/02/2014-linux-jobs-report-demand-linux-expertise-drives-hiring>

译者：[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Ubuntu将在整合操作系统的战役中击败微软

Summary: Canonical通过Ubuntu的发行正在开发一种无需不同版本就能够在不同平台运行的统一的操作系统，这意味着人们通过同一张从Ubuntu.com 下载的iso镜像就可以在桌面，手机，平板甚至电视上运行Ubuntu系统。 不久之前就有传 ...

洋大白菜(微博): Repost

洋大白菜(微博): Repost

njbigjun(微博): 转发微博

njbigjun(微博): 转发微博

不再彷徨-不再迷茫(微博): 转发微博

HEU周洋(微博): 转发微博

钺无钩(微博): unity 太难用了

its家鑫(微博): 转发微博

詹毅律师(微博): 关注

Wicky威(微博): 野心很大，可惜缺钱～～～好像到现在c社还没盈利～～

冷酷的青蛙9(微博): 回复@钺无钩: 可以安装其他桌面kde什么的。

钺无钩(微博): 回复@冷酷的青蛙9:嗯 我用的gnome

孟勇健(微博): 支持Ubuntu，支持Linux[鼓掌][鼓掌][鼓掌]

milan91(微博): 转发微博

疯狂的张管家(微博): 转发微博

Ice_Shara(微博): =，=··还想干掉windows，下辈子再说吧~~

_LostHorizon_(微博): 做好一件事 不代表要击败谁 //@Wicky威:野心很大，可惜缺钱～～～好像到现在c社还没盈利～～

Fei_Zodiac(微博): 等ubuntu有了像win那样强大的，平时需要用的，必不可少的软件时候考虑一下转平台。。。

根红苗正的二胜(微博): 呵呵了

_qilu__(微博): 转发微博

吞枣(微博): 大言不惭！

SunshineEmperor(微博): 现在微软连Windows RT和Windows Phone都是割裂的，Ubuntu却从始至终全平台一个系统。差距啊！

西伯利亞的閃電(微博): [赞][赞]

Jason姓Szeto(微博): 听上去挺美好的

arrisle(微博): 转发微博

各种症患者丶晰一(微博): [汗]

昆古尼尔与朗基努斯(微博): 理想很丰满，现实很骨感。。。

炒米粉和酸辣汤(微博): 可以在平板上运行linux操作系统吗？

Ubuntu中文站(微博): [可怜]

Ubuntu中文站(微博): [可怜]

陈华君2010(微博): //@Ubuntu中文站:[可怜]

咪咕虫虫(微博): //@Ubuntu中文站:[可怜]

sizhengzhang(微博): 愿景虽好……唉，作为粉丝还是认为应该脚踏实地……//@Ubuntu中文站:[可怜]

碌路(微博): 关键是应用，光有个系统有什么用？

TowerRusher(微博): //@Ubuntu中文站: [可怜]

给个赞。

常清静(微博): 开源就这样，不可靠。

春子说说(微博): //@Ubuntu中文站:[可怜]

曲一旻(微博): 转发微波

年轮上的梦(微博): 转发微博

破烂弟(微博): 转发微博

饶晓文(微博): 转发微博

骑车到处看看(微博): 转发微博

LSX李士新(微博): 牛，等着呢

LSX李士新(微博): 牛，等着呢

David段88(微博): [赞]，应该可以自适应设备和硬件。Ubuntu实现真正的平台统一。而不是像窗花那样，桌面的叫Win8，平板的叫RT，手机的叫WP，累不累啊。。。。。。。@校长Ubuntu

ThomazL(微博): 转发微博

那不是跟ARCH一样么……实时更新

# Ubuntu将在整合操作系统的战役中击败微软

<img src="content_image/album_201403_11_101454y968d8e9bzneeedo.jpg" alt="" title="">

Canonical通过Ubuntu的发行正在开发一种无需不同版本就能够在不同平台运行的统一的操作系统，这意味着人们通过同一张从[Ubuntu.com](http://www.ubuntu.com/) 下载的iso镜像就可以在桌面，手机，平板甚至电视上运行Ubuntu系统。

不久之前就有传闻说微软正在做同样的工作，他们准备在消灭不尽人意的Windows RT之后使统一的Windows运行在不同平台上。

他们(微软)已经开发了一种叫做Metro的十分热门的统一用户交互界面，但Metro在不同的操作系统中有不同的版本。因为Windows RT是专门为32位的ARM处理器而设计的，不同的版本会造成很多迷惑以及兼容性问题。

然而在一场采访中，Shuttleworth告诉[PcPro](http://www.pcpro.co.uk/news/interviews/386080/mark-shuttleworth-interview-taking-ubuntu-beyond-desktops)的记者，Canonical可能会在微软之前发布一种真正的移动/桌面整合的操作系统。

>
> 真正的移动/桌面的整合会发生在下一个重要的发布周期——不会出现在14.04的更新中，但它可能会出现在14.10或者15.04。我们相信我们可以在微软对移动端和桌面平台的整合之前发布，虽然在移动端和桌面平台的整合也是微软确立的在设计与开发两方面的目标。
>
>
>

当问到像Android一样良好发展中的操作系统以及缓慢然而稳定发展的Windows是否会对Canonical的未来发展的雄心壮志产生威胁时，Shuttleworth回答道：

>
> 我认为我们和Windows8的最大不同是，我们是基于Linux的，就像Android一样。这意味着为Android设计的web以及本地应用比起Windows将会对Ubuntu更加有好。很大部分的Android开发者使用着Ubuntu作为他们的操作系统，而且他们基本上在Ubuntu中开发这些应用，因此对他们来说，同时开发Ubuntu的应用将会变得十分方便。
>
>
>

Shuttleworth并没有确认Canonical的任何官方硬件合作伙伴，但他承认有一些“家喻户晓”的品牌厂商正在一些“尖端产品”上内部测试Ubuntu系统。

Shuttleworth也暗示Canonical将会改变Ubuntu的6个月的发布周期，并将其改变为实时的更新。

>
> 一旦我们实现了移动端与桌面平台的整合，将会产生“6个月的发布周期是否有用？”这个问题。手机和平板用户们已经习惯了手机上的实时更新，因此我们可能会模糊“发布周期”这个概念，并采用“实时发布”这个解决方案。
>
>
>

via: <http://www.linuxfederation.com/ubuntu-will-beat-microsoft/>

译者：[ThomazL](https://github.com/ThomazL) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


如何在 Ubuntu 13.10 中安装 Gnome 3.10

Summary: 厌倦 Unity 了吗？或者说就是不喜欢它？为何不试试在 Ubuntu 13.10 中安装 Gnome 3.10？安装一个新的桌面环境是为数不多的安装Ubuntu 13.10后要做的事之一，如果你想要尝试一下。在这篇快速教程中我们将会分享如何在 ...

很好

华仔米有V(微博): @我的印象笔记

14爷CC(微博): 转发微博

Inspur赵祯龙(微博): [兔子]

孟勇健(微博): 转发微博

Encore丶Yz(微博): @买粉丝QQ亲哦[红牌][7][1][2][o][2][6][7][6]

阿夏_黑黑(微博): kde

AspxSpy(微博): 转发微博

# 如何在 Ubuntu 13.10 中安装 Gnome 3.10

厌倦 Unity 了吗？或者说就是不喜欢它？为何不试试**在 Ubuntu 13.10 中安装 Gnome 3.10**？安装一个新的桌面环境是为数不多的[安装Ubuntu 13.10后要做的事](http://itsfoss.com/things-to-do-after-installing-ubuntu-13-10/)之一，如果你想要尝试一下。在这篇快速教程中我们将会分享**如何在 Ubuntu 13.10 中安装 Gnome 3.10**。

### 在 Ubuntu 13.10 中安装 Gnome 3.10：

我们将花费一些时间来使用几个 PPA 安装 Gnome 3.10 和分配升级。我假设你网速不错，如果不是的话，你可以使用一些[小技巧来提高 Ubuntu13.10 的系统性能](http://itsfoss.com/speed-up-ubuntu-1310/)。

#### 第一步：安装 GDM [可选]

第一步是安装[GDM](https://wiki.gnome.org/Projects/GDM)以及默认的[LightDM](http://en.wikipedia.org/wiki/LightDM)。这是可选的，但是还是建议各位如很多人提醒的LightDM问题（这句话不通顺，但是不太理解，还请组长看一下）。打开终端（Ctrl+Alt+T），并使用下面的命令：

```
sudo apt-get install gdm

```

出现提示时选择 GDM。

#### 第二步：添加PPAs并升级系统

现在是时候添加 Gnome 3.10 PPA 了。使用以下命令添加 PPA 将需要一些时间并下载 200 MB 的数据。

```
sudo add-apt-repository ppa:gnome3-team/gnome3-next
sudo add-apt-repository ppa:gnome3-team/gnome3-staging
sudo apt-get update
sudo apt-get dist-upgrade

```

#### 第三步：安装 Gnome shell

一旦升级已经完成，可以使用下面的命令在 Ubuntu 中安装 Gnome3.10。

```
sudo apt-get install gnome-shell

```

#### 第四步：安装 Gnome 特定的应用程序 [可选]

这一步是可选的。你可能想安装一些 Gnome 特定的应用程序以达到 Gnome 3.10 在 Ubuntu 中得完美体验。你也许会遇到一些应用程序的相关问题。

```
sudo apt-get install gnome-weather gnome-music gnome-maps gnome-documents gnome-boxes gnome-shell-extensions gnome-tweak-tool gnome-clocks

```

这些就是所有你需要做的。重新启动计算机，在登录时，通过点击齿轮标志选择 Gnome。这里是我的 Gnome 3.10 在我的笔记本电脑上的效果：

### 卸载 Gnome 3.10:

不喜欢 Gnome 3.10 了？不用担心，通过[deleting PPA](http://itsfoss.com/how-to-remove-or-delete-ppas-quick-tip/)卸载它们。要做到这一点，你需要安装 PPA Purge（如果尚未安装）。使用下面的命令：

```
sudo apt-get install ppa-purge

```

之后，安装你所安装的 PPA：

```
sudo ppa-purge ppa:gnome3-team/gnome3-staging
sudo ppa-purge ppa:gnome3-team/gnome3-next

```

在 Ubuntu13.10 版本库中是可以恢复 Gnome 3.10 到 Gnome 3.8。要想完全删除 Gnome 3，使用以下命令：

```
sudo apt-get remove gnome-shell ubuntu-gnome-desktop

```

当然，你应该删除任何你专为 Gnome 3.10 安装的应用程序。

我希望本教程能帮助你在 Ubuntu 13.10 中安装 Gnome 3.10。尝试 Gnome 3.10了吗？你更喜欢哪一个，Gnome 还是 Unity？

---

via: <http://itsfoss.com/install-gnome-3-ubuntu-1310/>

译者：[乌龙茶](https://github.com/yechunxiao19) 校对：[Caroline](https://github.com/carolinewuyan)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出


Summary: Linux 和 Unix 属于多任务的操作系统，也就是说一个系统在同一时间段内能运行多重任务(进程)。在这个新的博客系列，我将会列出相关的 Linux 和 Unix 作业（job）控制的命令，你可以通过这些命令在 Bash 或 Korn 还有 ...

Im_Bill：

转发微博
—— 2014-3-13 10:59

zhaowenke：

转发微博
—— 2014-3-13 11:04

唐方成：

转发微博
—— 2014-3-13 11:14

唐方成：

转发微博
—— 2014-3-13 11:14

Mr__LYR：

转发微博
—— 2014-3-13 11:39

_-IrvIng-_：

[疑问]
—— 2014-3-13 12:05

疯狂的张管家：

转发微博
—— 2014-3-13 12:16

Freelust：

转发微博
—— 2014-3-13 12:42

奔---日子：

@有道云笔记收藏
—— 2014-3-13 13:02

朱海明Ed：

//@唐方成:转发微博
—— 2014-3-13 13:10

流水莫鉴：

Repost
—— 2014-3-13 13:12

tiger-sniffs-the-rose：

转发微博
—— 2014-3-13 14:51

郑QG：

转发微博
—— 2014-3-13 18:40

07级童鞋和怡1995：

//@朱海明Ed: //@唐方成:转发微博
—— 2014-3-14 11:31

ThomasTsang11：

转发微博
—— 2014-3-14 13:08

AspxSpy：

@我的印象笔记
—— 2014-3-14 13:40

# 10个 Linux/Unix下 Bash 和 KSH shell 的作业控制实例

Linux 和 Unix 属于多任务的操作系统，也就是说一个系统在同一时间段内能运行多重任务(进程)。在这个新的博客系列，我将会列出相关的 Linux 和 Unix 作业（job）控制的命令，你可以通过这些命令在 Bash 或 Korn 还有 POSIX shell 下实现执行多重任务。

### 什么是作业控制？

作业控制不只是能够停止/挂起(stop/suspend)正在执行的进程(命令)，也可以继续/唤醒(continue/resume)执行你需要的每一个进程。这完全可以用你的操作系统和 bash/ksh 之类的 shell 或 POSIX shell 完成。

### 谁给作业控制的提供了环境？

Bash / Korn shell，或者是 POSIX shell 提供给了作业控制的环境。

### 跟作业表打个招呼吧

你的 shell 会留有一张当前作业的表单，称为作业表。当你键入命令时，shell 会给它分配一个 jobID(也称作 JOB*SPEC)。一个 jobID 或 JOB*SPEC只是很小的整数数值。

### #1: 创建你的首个 Linux/Unix 作业

我要运行一个名为 xeyes 的命令，它会在屏幕上显示两个椭圆的眼睛,输入： $ xeyes &

输出样例：

[](http://www.cyberciti.biz/howto/unix-linux-job-control-command-list-for-bash-ksh-shell/attachment/run-xeyes-command-in-background/)

*Fig.01: 在后台运行 xeyes 命令*

我使用&符号让一个 job 在后台运行。shell 会打印一行信息类似如下:

```
[1] 6891

```

在这个例子中，有两个数字输出，分别表示：

* [1](http://www.cyberciti.biz/faq/unix-linux-jobs-command-examples-usage-syntax/) : 在后台执行的 xeyes 任务的作业号为 1。
* 6891 : 作业1的进程ID。

我在多执行一些 job:

```
## 启动一个文本编辑器，X 的系统负载显示，和 sleep 命令 ##
gedit /tmp/hello.c &
xload &
sleep 100000 &

```

### #2: 列出当前的作业

要[查看当前 shell 的激活的任务状态](http://www.cyberciti.biz/faq/unix-linux-jobs-command-examples-usage-syntax/)，输入：

```
$ jobs
$ jobs -l

```

输出如下:

```
[1]   9379 Running                 xeyes &
[2]   9380 Running                 gedit /tmp/hello.c &
[3]-  9420 Running                 xload &
[4]+  9421 Running                 sleep 100000 &

```

简要描述如下：

| 字段 | 值 | 描述 | 示例 |
| --- | --- | --- | --- |
| 1 | [1] | **jobID** 或 **JOB\_SPEC** - 工作号要与fg, bg, wait, kill和其他shell命令一起使用。你必须在工作号前缀添加一个百分号：(`**%**`)。加号 (`+`) 标识着默认的或是现在的作业。减号 (`-`) 标识着前一个作业。 | `%1``fg %1``kill %2` |
| 2 | 9379 | **进程 ID** - 系统自动为每个进程创建并分配地独有的身份标志号。 | kill 9379 |
| 3 | Running | **状态** - 关于作业的状态:`**Running**` - 该 作业正在运行,还没有被外部信号挂起。`**Stopped**` - 该作业已经被挂起。 | N/A |
| 4 | xeyes & | **command** - 由shell给出的命令。 | script &firefox url& |

你也可以用 ps 命名列出当前系统正在运行的进程:

```
$ ps

```

### #3: 停止或挂起正在运行的作业

按下[Ctrl]-[Z]键或使用[kill 命令](http://www.cyberciti.biz/faq/unix-kill-command-examples/),如下所示：

```
kill -s stop PID

```

举个例子，启动[ping 命令](http://www.cyberciti.biz/faq/unix-ping-command-examples/)，然后用 Ctrl-Z 键来停止 ping 命令作业：

[](http://www.cyberciti.biz/howto/unix-linux-job-control-command-list-for-bash-ksh-shell/attachment/suspend-unix-job-command/)

*Animated gif 01: 挂起 ping 命令作业*

### #4: 在前台恢复 挂起的/停止的作业

让我们[恢复处于停止状态下的作业，让它回到前台继续运行](http://www.cyberciti.biz/faq/unix-linux-fg-command-examples-usage-syntax/)，要将其变成当前作业，必须借助[fg 命令](http://www.cyberciti.biz/faq/unix-linux-fg-command-examples-usage-syntax/)。具体语法如下：

```
## ping 命令的作业号的值为5 ##
fg %5

```

我也可以规定命令行开端符合字符串"ping"的作业[译注：不能出现不明确的字符串，例如如果后台有两个 vim 进程而你敲入 fg %vim 会报错。]:

```
## %String ##
fg %ping

```

输出样例：

```
64 bytes from www.cyberciti.biz (75.126.153.206): icmp_req=3 ttl=53 time=265 ms
64 bytes from www.cyberciti.biz (75.126.153.206): icmp_req=4 ttl=53 time=249 ms
64 bytes from www.cyberciti.biz (75.126.153.206): icmp_req=5 ttl=53 time=267 ms
^C

```

### #5: 在后台恢复 挂起/停止状态的作业

在这个例子中，我使用[yum 命令](http://www.cyberciti.biz/faq/rhel-centos-fedora-linux-yum-command-howto/)更新所有安装在 Redhat 或 CentOS Linux 生产服务器上的软件包并置于后台作业。

```
# yum -y update &>/root/patch.log &

```

然而，由于一些原因(例如,过载问题)我决定停止这个作业20分钟：

```
# kill -s stop %yum

```

输出样例：

```
[7]+  Stopped                 yum -y update &>/root/patch.log &

```

用 bg 重启停止在后台的 yum 进程

现在，我将要[恢复停止的 yum -y update &>/root/patch.log & 作业](http://www.cyberciti.biz/faq/unix-linux-bg-command-examples-usage-syntax/)，键入：

```
# bg %7

```

或者：

```
# bg %yum

```

输出样例：

```
[7]+ yum -y update &>/root/patch.log &

```

### #6: 杀死作业/进程

杀死[yum 命令](http://www.cyberciti.biz/faq/rhel-centos-fedora-linux-yum-command-howto/)进程，输入如下[kill 命令](http://www.cyberciti.biz/faq/unix-kill-command-examples/)及其作业号 7：

```
# kill %7

```

或者

```
# kill 进程ID

```

输出样例：

```
[7]+  Terminated              yum -y update &>/root/patch.log &

```

在 Linux/FreeBSD/OS X Unix 下你也可以[使用 killall 命令通过名字杀死进程或是 jobID 而不是通过 PID](http://www.cyberciti.biz/faq/unix-linux-killall-command-examples-usage-syntax/)

### #7 为什么当我登出后 shell 会清除我的所有后台作业

在这个例子中,我将会启动 pdfwriter.py 来批量生成[这个站点](http://www.cyberciti.biz/faq/)的 pdf 文件:

```
~/scripts/www/pdfwriter.py --profile=faq --type=clean --header=logo\
--footer-left "nixCraft is GIT UL++++ W+++ C++++ M+ e+++ d-" \
--footer-right "Page [of] of [total]" &

```

一旦当我登出shell时，pdfwriter.py 作业就会被我的 shell 杀死。为了克服这个问题需要使用[shell的内置命令 disown 来告诉 shell 不要发送 HUP 信号](http://www.cyberciti.biz/faq/unix-linux-disown-command-examples-usage-syntax/),键入：

```
$ ~/scripts/www/pdfwriter.py --profile=faq .... &
$ disown
$ exit

```

### #8 使用一个名为 nohup 的外部命令阻止在登出时杀死作业

你也可以使用[nohup 命令在你退出 shell 后执行作业](http://www.cyberciti.biz/tips/nohup-execute-commands-after-you-exit-from-a-shell-prompt.html):

```
$ nohup ~/scripts/www/pdfwriter.py --profile=faq .... &
$ exit

```

### #9: 查找最后的作业的 PID

为了查找最近在后台执行的(异步)命令的进程ID，可使用 bash shell 的特殊参数 $!

```
$ gedit foo.txt &
$ echo "最近在后台执行的job 的PID - $!"

```

输出样例：

```
最近在后台执行的job 的PID - 9421

```

### #10: 等候作业完成

wait 命令会等候给予的进程ID 或 作业ID指定的进程，然后报告它的终止状态。语法如下：

```
/path/to/large-job/command/foo &
wait $!
/path/to/next/job/that-is-dependents/on-foo-command/bar

```

这是我的一个工作脚本：

```
#!/bin/bash
# A shell script wrapper to create pdf files for our blog/faq section
########################################################################
# init() - Must be run first
# Purpose - Create index file in $_tmp for all our wordpress databases
########################################################################
init(){
 _php="/usr/bin/php"
 _phpargs="-d apc.enabled=0"
 _base="~/scripts"
 _tmp="$_base/tmp"
 _what="$1"
 for i in $_what
 do
        [[ ! -d "$_tmp/$i" ]] && /bin/mkdir "$_tmp/$i"
        $_php $_phpargs -f "$_base/php/rawsqlmaster${i}.php" >  "$_tmp/$i/output.txt"
 done
}

#####################################################
# Without index file, we can out generate pdf files
#####################################################
init blog

###########################################################
# Do not run the rest of the script until init() finished
###########################################################
wait $!

## Alright, create pdf files
~/scripts/www/pdfwriter.py --profile=blog --type=clean --header=logo\
--footer-left "nixCraft is GIT UL++++ W+++ C++++ M+ e+++ d-" \
--footer-right "Page [of] of [total]"

```

#### Linux 和 Unix 作业控制命令总结列表

| 命令 | 描述 | 示例 |
| --- | --- | --- |
| `**&**` | 将作业置入后台 | `命令 &` |
| `**%n**` | 设置作业号为 n (数字)的作业 | `命令 %1` |
| `**%Word**` | 引用命令行开端包含 Word 的作业 | `命令 %yum` |
| `**%?Word**` | 引用命令行包含 Word 的作业 | `命令 %?ping` |
| `**%%**``**%+**` | 引用当前作业 | `kill %%kill %+` |
| `**%-**` | 引用先前作业 | `bg %-` |
| `**CTRL-Z**`**kill -s stop jobID**`` | 挂起或停止作业 | `kill -s stop %ping` |
| `**jobs**`**jobs -l**`` | 列出活动的作业 | `jobs -l` |
| `**bg**` | 将 作业置入后台 | `bg %1bg %ping` |
| `**fg**` | 将作业置入前台 | `fg %2fg %apt-get` |

### 关于 shell 内置命令和外部命令的小注

运行下面的 type 命令找出给予命令是否属于内部或外部的。

```
type -a fg bg jobs disown

```

输出样式：

```
fg is a shell builtin
fg is /usr/bin/fg
bg is a shell builtin
bg is /usr/bin/bg
jobs is a shell builtin
jobs is /usr/bin/jobs
disown is a shell builtin

```

在几乎所有情况下，你都需要使用 shell 的内置命令。所有外部命令例如 /usr/bin/fg 或 /usr/bin/jobs 工作在一个不同的 shell 环境下，而不能用在父 shell 的环境下。

### 总结

我希望你能喜欢这篇博文系列([rss 订阅](http://www.cyberciti.biz/tutorials/practical-unixlinux-series/feed/)),我建议你阅读下面的更多信息：

* 在我们的 faq 章节查阅有关进程管理的文章[disoen 命令示例](http://www.cyberciti.biz/faq/unix-linux-disown-command-examples-usage-syntax/)，[jobs 命令示例](http://www.cyberciti.biz/faq/unix-linux-jobs-command-examples-usage-syntax/)，[bg 命令示例](http://www.cyberciti.biz/faq/unix-linux-bg-command-examples-usage-syntax/)，和[fg 命令示例](http://www.cyberciti.biz/faq/unix-linux-fg-command-examples-usage-syntax/)。
* Man pages [bash(1)](http://www.manpager.com/linux/man1/bash.1.html), [ksh(1)](http://www.manpager.com/linux/man1/ksh.1.html), [ps(1)](http://www.manpager.com/linux/man1/ps.1.html), [kill(1)](http://www.manpager.com/linux/man1/kill.1.html)
* [Korn shell (ksh93) 文档](http://www2.research.att.com/sw/download/man/man1/ksh.html).
* [NU bash shell 文档](https://www.gnu.org/software/bash/manual/bashref.html).

我会计划在这个系列添加更多深入的教程。若果你需要看到具体的主题，请在下方评论让我知道。

---

via: <http://www.cyberciti.biz/howto/unix-linux-job-control-command-examples-for-bash-ksh-shell/>

译者：[Luoxcat](https://github.com/Luoxcat) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出