Merge pull request #8 from LCTT/master

Update the repo
This commit is contained in:
ZTinoZ 2015-06-25 09:29:36 +08:00
commit ac91fcba30
253 changed files with 17675 additions and 4445 deletions

196
README.md
View File

@ -49,93 +49,127 @@ LCTT的组成
* 2014/10/08 提升bazz2为Core Translators成员。
* 2014/11/04 提升zpl1025为Core Translators成员。
* 2014/12/25 提升runningwater为Core Translators成员。
* 2015/04/19 发起 LFS-BOOK-7.7-systemd 项目。
* 2015/06/09 提升ictlyh和dongfengweixiao为Core Translators成员。
活跃成员
-------------------------------
目前活跃成员有:
- CORE [wxy](https://github.com/wxy),
- CORE [carolinewuyan](https://github.com/carolinewuyan),
- CORE [DeadFire](https://github.com/DeadFire),
- CORE [geekpi](https://github.com/geekpi),
- CORE [GOLinux](https://github.com/GOLinux),
- CORE [reinoir](https://github.com/reinoir),
- CORE [bazz2](https://github.com/bazz2),
- CORE [zpl1025](https://github.com/zpl1025),
- Senior [tinyeyeser](https://github.com/tinyeyeser),
- Senior [vito-L](https://github.com/vito-L),
- Senior [jasminepeng](https://github.com/jasminepeng),
- Senior [willqian](https://github.com/willqian),
- Senior [vizv](https://github.com/vizv),
- [runningwater](https://github.com/runningwater),
- [luoxcat](https://github.com/Luoxcat),
- [Vic020](https://github.com/Vic020),
- [KayGuoWhu](https://github.com/KayGuoWhu),
- [alim0x](https://github.com/alim0x),
- [ZTinoZ](https://github.com/ZTinoZ),
- [2q1w2007](https://github.com/2q1w2007),
- [flsf](https://github.com/flsf),
- [blueabysm](https://github.com/blueabysm),
- [barney-ro](https://github.com/barney-ro),
- [su-kaiyao](https://github.com/su-kaiyao),
- [crowner](https://github.com/crowner),
- [Linchenguang](https://github.com/Linchenguang),
- [Linux-pdz](https://github.com/Linux-pdz),
- [linuhap](https://github.com/linuhap),
- [yechunxiao19](https://github.com/yechunxiao19),
- [woodboow](https://github.com/woodboow),
- [SPccman](https://github.com/SPccman),
- [disylee](https://github.com/disylee),
- [cvsher](https://github.com/cvsher),
- [ThomazL](https://github.com/ThomazL),
- [Stevearzh](https://github.com/Stevearzh),
- [felixonmars](https://github.com/felixonmars),
- [scusjs](https://github.com/scusjs),
- [johnhoow](https://github.com/johnhoow),
- [hyaocuk](https://github.com/hyaocuk),
- [MikeCoder](https://github.com/MikeCoder),
- [theo-l](https://github.com/theo-l),
- [wangjiezhe](https://github.com/wangjiezhe),
- [jiajia9linuxer](https://github.com/jiajia9linuxer),
- [NearTan](https://github.com/NearTan),
- [l3b2w1](https://github.com/l3b2w1),
- [shipsw](https://github.com/shipsw),
- [boredivan](https://github.com/boredivan),
- [Love-xuan](https://github.com/Love-xuan),
- [JonathanKang](https://github.com/JonathanKang),
- [luoyutiantang](https://github.com/luoyutiantang),
- [owen-carter](https://github.com/owen-carter),
- [icybreaker](https://github.com/icybreaker),
- [tenght](https://github.com/tenght),
- [rogetfan](https://github.com/rogetfan),
- [liuaiping](https://github.com/liuaiping),
- [nd0104](https://github.com/nd0104),
- [szrlee](https://github.com/szrlee),
- [lfzark](https://github.com/lfzark),
- [ggaaooppeenngg](https://github.com/ggaaooppeenngg),
- [CNprober](https://github.com/CNprober),
- [coloka](https://github.com/coloka),
- [213edu](https://github.com/213edu),
- [guodongxiaren](https://github.com/guodongxiaren),
- [Tanete](https://github.com/Tanete),
- [zzlyzq](https://github.com/zzlyzq),
- [yujianxuechuan](https://github.com/yujianxuechuan),
- [ailurus1991](https://github.com/ailurus1991),
- [FineFan](https://github.com/FineFan),
- [shaohaolin](https://github.com/shaohaolin),
- [tomatoKiller](https://github.com/tomatoKiller),
- [CHINAANSHE](https://github.com/CHINAANSHE),
- [stduolc](https://github.com/stduolc),
- [Maclauring](https://github.com/Maclauring),
- [Hao-Ding](https://github.com/Hao-Ding),
- [zsJacky](https://github.com/zsJacky),
- [small-Wood](https://github.com/small-Wood),
- [cereuz](https://github.com/cereuz),
- [lijhg](https://github.com/lijhg),
- [fbigun](https://github.com/fbigun),
目前 TP 活跃成员有:
- CORE @wxy,
- CORE @carolinewuyan,
- CORE @DeadFire,
- CORE @geekpi,
- CORE @GOLinux,
- CORE @reinoir,
- CORE @bazz2,
- CORE @zpl1025,
- CORE @ictlyh,
- CORE @dongfengweixiao
- Senior @tinyeyeser,
- Senior @vito-L,
- Senior @jasminepeng,
- Senior @willqian,
- Senior @vizv,
- @ZTinoZ,
- @Vic020,
- @runningwater,
- @KayGuoWhu,
- @luoxcat,
- @alim0x,
- @2q1w2007,
- @theo-l,
- @FSSlc,
- @su-kaiyao,
- @blueabysm,
- @flsf,
- @martin2011qi,
- @SPccman,
- @wi-cuckoo,
- @Linchenguang,
- @linuhap,
- @crowner,
- @Linux-pdz,
- @H-mudcup,
- @yechunxiao19,
- @woodboow,
- @Stevearzh,
- @disylee,
- @cvsher,
- @wwy-hust,
- @johnhoow,
- @felixonmars,
- @TxmszLou,
- @shipsw,
- @scusjs,
- @wangjiezhe,
- @hyaocuk,
- @MikeCoder,
- @ZhouJ-sh,
- @boredivan,
- @goreliu,
- @l3b2w1,
- @JonathanKang,
- @NearTan,
- @jiajia9linuxer,
- @Love-xuan,
- @coloka,
- @owen-carter,
- @luoyutiantang,
- @JeffDing,
- @icybreaker,
- @tenght,
- @liuaiping,
- @mtunique,
- @rogetfan,
- @nd0104,
- @mr-ping,
- @szrlee,
- @lfzark,
- @CNprober,
- @DongShuaike,
- @ggaaooppeenngg,
- @haimingfg,
- @213edu,
- @Tanete,
- @guodongxiaren,
- @zzlyzq,
- @FineFan,
- @yujianxuechuan,
- @Medusar,
- @shaohaolin,
- @ailurus1991,
- @liaoishere,
- @CHINAANSHE,
- @stduolc,
- @yupmoon,
- @tomatoKiller,
- @zhangboyue,
- @kingname,
- @KevinSJ,
- @zsJacky,
- @willqian,
- @Hao-Ding,
- @JygjHappy,
- @Maclauring,
- @small-Wood,
- @cereuz,
- @fbigun,
- @lijhg,
- @soooogreen,
更新于2014/12/02以Github contributors列表排名
LFS 项目活跃成员有:
- @ictlyh
- @dongfengweixiao
- @wxy
- @H-mudcup
- @zpl1025
- @KevinSJ
- @Yuking-net
更新于2015/06/09以Github contributors列表排名
谢谢大家的支持!

View File

@ -0,0 +1,187 @@
Linux中安装Cisco Packet Tracer
================================================================================
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/Main_picture.png)
### Cisco Packet tracer是什么 ###
**Cisco Packet Tracer**是一个强大的网络模拟工具用于进行Cisco认证时的培训。它为我们提供了各个路由器和网络设备的良好的接口视图这些模拟设备带有很多选项跟使用物理机一样我们可以在网络中使用无限的设备。我们能在单个工程中创建多个网络以获得专业化的训练。Packet Tracer将提供给我们模拟的应用层协议如**HTTP****DNS**,以及像**RIP****OSPF****EIGRP**等路由协议。
现在,它发布了包含有**ASA 5505防火墙**命令行配置的版本。Packet Tracer通常用于Windows版本但没有Linux版本。这里我们可以下载并安装Cisco Packet Tracer。
#### 新发布的Cisco Packet Tracer版本 ####
下一代Cisco Packet Tracer版本将会是Cisco Packet Tracer 6.2,当前还处于开发中。
### 我的环境设置: ###
**主机名** : desktop1.unixmen.com
**IP地址** : 192.168.0.167
**操作系统** : Ubuntu 14.04 LTS Desktop
# hostname
# ifconfig | grep inet
# lsb_release -a
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_001.png)
### 步骤 1 首先我们需要下载Cisco Packet Tracer。 ###
要从官方网站下载Packet Tracer我们需要持有一个令牌登入Cisco NetSpace然后从Offering菜单选择CCNA > Cisco Packet Tracer来开始下载。如果我们没有令牌可以从下面的链接中获得我已经将它上传到了Droppox。
官方站点: [https://www.netacad.com/][1]
大多数人没有下载Packet Tracer的令牌出于该原因我已经将它上传到了dropbox你可以从下面的URL获得Packet Tracer。
[下载Cisco Packet Tracer 6.1.1][2]
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_002.png)
### 步骤 2 安装Java ###
要安装Packet Tracer我们需要安装java。我们可以使用默认的仓库安装java或者添加PPA仓库然后更新包缓存来安装java。
使用以下命令来安装默认的jre
# sudo apt-get install default-jre
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_003.png)
(或者)
使用下面的步骤来安装Java Run-time并设置环境。
从官方站点下载Java[下载Java][3]
# tar -zxvf jre-8u31-linux-x64.tar.gz
# sudo mkdir -p /usr/lib/jvm
# sudo mv -v jre1.8.0_31 /usr/lib/jvm/
# cd /usr/lib/jvm/
# sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jre1.8.0_31/bin/java" 1
# sudo update-alternatives --set "java" "/usr/lib/jvm/jre1.8.0_31/bin/java"
通过编辑用户参数文件来设置Java环境并添加路径相关的参数。当我们添加进用户参数文件后我们机器上的每个用户都可以用java了。
# sudo vi /etc/profile
将以下条目添加到/etc/profile文件中
export JAVA_HOME=/usr/lib/jvm/jre1.8.0_31
export PATH=$PATH:/usr/java/jre1.8.0_31/bin
运行以下命令来立即激活java路径。
# . /etc/profile
检查Java版本和环境
# echo $JAVA_HOME
# java -version
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_004.png)
### 步骤 3 启用32位架构支持 ###
对于Packet Tracer我们需要一些32位包。要安装32位包我们需要使用以下命令来安装一些依赖。
# sudo dpkg --add-architecture i386
# sudo apt-get update
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_005.png)
# sudo apt-get install libc6:i386
# sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
# sudo apt-get install libnss3-1d:i386 libqt4-qt3support:i386 libssl1.0.0:i386 libqtwebkit4:i386 libqt4-scripttools:i386
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_006.png)
### 步骤 4 解压并安装软件包: ###
使用tar命令来解压下载的包。
# mv Cisco\ Packet\ Tracer\ 6.1.1\ Linux.tar.gz\?dl\=0 Cisco_Packet_tracer.tar.gz
# tar -zxvf Cisco_Packet_tracer.tar.gz
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_007.png)
导航到解压后的目录
# cd PacketTracer611Student
现在,该开始安装了。安装过程很简单,只需几秒钟即可搞定。
# sudo ./install
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_008.png)
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_009.png)
要使用Packet Tracer工作我们需要设置环境Cisco已经提供了环境脚本我们需要以root用户来运行该脚本以设置环境变量。
# sudo ./set_ptenv.sh
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_010.png)
安装到此结束。接下来我们需要为Packet Tracer创建桌面图标。
通过创建下面的桌面文件来创建桌面图标。
# sudo su
# cd /usr/share/applications
# sudo vim packettracer.desktop
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_011.png)
使用vim编辑器或你喜爱的那个编辑器来添加以下内容到文件。
[Desktop Entry]
Name= Packettracer
Comment=Networking
GenericName=Cisco Packettracer
Exec=/opt/packettracer/packettracer
Icon=/usr/share/icons/packettracer.jpeg
StartupNotify=true
Terminal=false
Type=Application
使用wq!来保存并退出vim。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_012.png)
### 步骤 5 运行Packet Tracer ###
# sudo packettracer
好了我们已经成功将Packet Tracer安装到Linux中。上述安装步骤适用于所有基于Debian的Linux发行版。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_013.png)
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/pkt_014.png)
### 资源 ###
主页:[Netacad][4]
### 尾声: ###
这里我们展示了如何安装Packet Tracer到Linux发行版中。希望你们找到了将你们所钟爱的模拟器安装到Linux中的方法。
--------------------------------------------------------------------------------
via: http://www.unixmen.com/installing-cisco-packet-tracer-linux/
作者:[babin][a]
译者:[GOLinux](https://github.com/GOLinux)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.unixmen.com/author/babin/
[1]:https://www.netacad.com/
[2]:https://www.dropbox.com/s/5evz8gyqqvq3o3v/Cisco%20Packet%20Tracer%206.1.1%20Linux.tar.gz?dl=0
[3]:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
[4]:https://www.netacad.com/

View File

@ -1,62 +1,61 @@
iptraf一个实用的TCP/UDP网络监控工具
iptrafTCP/UDP网络监控工具
================================================================================
[iptraf][1]是一个基于ncurses开发的IP局域网监控工具它可以生成各种网络统计数据包括TCP信息、UDP统计、ICMP和OSPF信息、以太网负载信息、节点统计、IP校验和错误和其它一些信息。
[iptraf][1]是一个基于ncurses的IP局域网监控器用来生成包括TCP信息、UDP计数、ICMP和OSPF信息、以太网负载信息、节点状态信息、IP校验和错误等等统计数据
它基于ncurses的用户界面也会把使用者从命令行选项的梦靥中拯救出来
它基于ncurses的用户界面可以使用户免于记忆繁琐的命令行开关。
### 功能 ###
### 特征 ###
- 一个用于显示通过网络的IP流量信息的IP流量监控器包括TCP标识信息、包和字节统计、ICMP详情、OSPF包类型
- 显示IP、TCP、UDP、ICMP、非IP和其它IP包计数、IP校验和错误、接口活动、包大小计数的综合详细的接口统计数据
- 一个用于计数常用TCP和UDP应用端口的流入和流出包的TCP和UDP服务监控器
- 一个用于发现活动主机和显示这些活动主机的数据活动的局域网统计模块
- TCP、UDP和其它协议的显示过滤器允许你查看你做感兴趣的流量
- 日志记录
- 支持以太网、FDDI、ISDN、SLIP、PPP和回环接口类型
- 利用Linux内核内建的原生套接口界面可以用于大范围支持的网卡
- 全屏、菜单驱动操作
- IP流量监控器用来显示你的网络中的IP流量变化信息。包括TCP标识信息、包以及字节计数ICMP细节OSPF包类型。
- 简单的和详细的接口统计数据包括IP、TCP、UDP、ICMP、非IP以及其他的IP包计数、IP校验和错误接口活动、包大小计数。
- TCP和UDP服务监控器能够显示常见的TCP和UDP应用端口上发送的和接收的包的数量。
- 局域网数据统计模块,能够发现在线的主机,并显示其上的数据活动统计信息。
- TCP、UDP、及其他协议的显示过滤器允许你只查看感兴趣的流量。
- 日志功能。
- 支持以太网、FDDI、ISDN、SLIP、PPP以及本地回环接口类型。
- 利用Linux内核内置的原始套接字接口允许它指iptraf能够用于各种支持的网卡上
- 全屏,菜单式驱动的操作。
###要安装###
###安装方法###
**Ubuntu以及其衍生版本**
**Ubuntu及其衍生版**
sudo apt-get install iptraf
**Arch Linux及其衍生版**
**Arch Linux及其衍生版**
sudo pacman -S iptra
**Fedora及其衍生版**
**Fedora及其衍生版**
sudo yum install iptraf
### 用法 ###
如果不加任何命令行选项地运行**iptraf**命令,程序将进入一种交互模式,通过主菜单可以访问多种功能
如果**iptraf**命令不带任何命令行选项执行,该程序就会以交互模式显现,可以通过主菜单获得各种各样的工具
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_1.png)
简易的上手导航菜单。
易于导航的菜单。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_2.png)
选择监控的接口。
选择监控的接口。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_3.png)
接口**ppp0**处的流量。
来自**ppp0**接口的流量
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_4.png)
试试吧!
希望你喜欢。
--------------------------------------------------------------------------------
via: http://www.unixmen.com/iptraf-tcpudp-network-monitoring-utility/
作者:[Enock Seth Nyamador][a]
译者:[DongShuaike](https://github.com/DongShuaike)
译者:[GOLinux](https://github.com/GOLinux)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -0,0 +1,111 @@
在 Linux 上如何用命令行获取 Freely RSS 源
================================================================================
也许你并不知道 Feedly它是世界上最流行的在线新闻聚合服务之一它提供了平滑而一致的新闻阅读体验你可以使用电脑的浏览器扩展Android 和 iOS 设备上的移动应用程序等来体验Feedly。Feedly 在2013年Google Reader 停用后迅速的获得了一大批Google Reader的用户。我就是他们之中的一位。从这以后Feedly就一直是我的默认RSS简易信息聚合阅读器。
除了使用我非常喜欢的Feedly浏览器扩展和手机上的Feedly程序这里还有一种途径来获取FeedlyLinux命令行。没错你可以用命令行来获取Feedly上的新闻概要。听起来非常傻但是对于那些在服务器上工作的系统管理员来说这是非常有用的。
点击进入[Feednix][2]这个用c++编写的开源软件是Feedly的非官方命令行客户端。它允许你在一个基于ncurses的终端界面例如bash下浏览Feedly的新闻。默认模式下Feednix 关联了一个叫做 w3m 的基于控制台的浏览器,允许你在命令行终端的环境下阅读文章。当然你也可以选择使用你喜欢的网页浏览器。
在这个教程中我准备示范一下怎样在命令行下安装和配置Feednix 来获取Feedly。
### 在Linux下安装Feednix ###
你可以通过以下的步骤从源代码中构建Feednix。同时在其官方的github仓库的Ubuntu-stableUbuntu稳定版本的分支上有最新的Feednix源代码。现在让我们开始吧
作为必要组件你需要安装一组开发包和w3m浏览器文字式页面浏览器
#### 在Debian、Ubuntu 和Linux Mint 操作 ####
$ sudo apt-get install git automake g++ make libncursesw5-dev libjsoncpp-dev libcurl4-gnutls-dev w3m
$ git clone -b Ubuntu-stable https://github.com/Jarkore/Feednix.git
$ cd Feednix
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
#### 在Fedora 下操作 ####
$ sudo yum groupinstall "C Development Tools and Libraries"
$ sudo yum install gcc-c++ git automake make ncurses-devel jsoncpp-devel libcurl-devel w3m
$ git clone -b Ubuntu-stable https://github.com/Jarkore/Feednix.git
$ cd Feednix
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
#### Arch Linux ####
在Arch Linux发行版下你可以非常容易的从 [AUR][3]安装Feednix。
### 配置Feednix ###
在安装完软件后用下面的命令启动Feednix
$ feednix
如果你是第一次运行Feddnix它会弹出一个网页浏览器窗口在这个窗口里你需要登录来创建一个Feedly的账户ID和相应的开发人员密钥。
如果你是在无桌面环境下运行Feednix先在另外一台电脑上打开一个网页进入到网站https://feedly.com/v3/auth/dev 。
![](https://farm8.staticflickr.com/7427/15825106524_42883b3e32_b.jpg)
当你登录后你对应的Feedly账户ID就生成了。
![](https://farm9.staticflickr.com/8565/15827565143_eb93db9c81_b.jpg)
为了得到一个访问密钥你需要在浏览器上访问发送你的邮箱中的密钥链接。之后就会在浏览器窗口显示你的用户ID密钥和密钥的有效期。请注意密钥的长度是非常长的超过200个字符所以密钥显示在一个带有垂直滚动条的文本框内请确保把整个密钥复制下来。
![](https://farm9.staticflickr.com/8605/16446685812_9098df494b_b.jpg)
像下面这样把你的用户ID和密钥输入到Feddnix的命令行提示下
[Enter User ID] >> XXXXXX
[Enter token] >> YYYYY
成功授权后你会在屏幕上见到一个初始化为两个窗格的Feednix界面。左边的标题为“Categories”窗格显示了一个新闻分类栏右边“Posts”窗格显示了当前类别的新闻文章。
![](https://farm8.staticflickr.com/7412/16421639256_deb8e2d276_c.jpg)
### 用Feednix读文章 ###
这里我想简要描叙一下怎样通过Feednix来访问Feedly。
#### 在Feednix中导航 ####
像我之前提过的Feednix窗口包含了两个窗格。想在两个窗口之间进行切换的话可以使用"TAB"健。想在一个窗格内的列表中上下移动,可以使用"j"和"k"。这些快捷健明显是受到了Vim编辑器的启发。
#### 阅读文章 ####
想阅读一篇特定的文章,可以在当前的文章上使用"o"健。它会调用w3m浏览器并且在浏览器里面加载文章。当你读完之后可以使用"q"健来退出浏览器并返回到Feednix。如果你的电脑环境允许打开网页浏览器你可以按"0"健来在你默认的网页浏览器里面加载文章比如使用Firefox。
![](https://farm8.staticflickr.com/7406/16445870201_b98e8da6d9_b.jpg)
#### 订阅新闻源 ####
你可以在Feednix界面中来为你的Feedly账户增加任何一种RSS新闻源。要这么做仅仅只需要按下"a"键,它会在屏幕底部显示一个"[ENTER FEED]:"的提示。在输入完RSS新闻源后继续输入新闻源的名字和及其首选分类。
![](https://farm8.staticflickr.com/7324/16421639296_b52ed3c52e_c.jpg)
#### 总结 ####
如你所见, Feednix 是一个非常方便易用的命令行RSS阅读器。如果你是重度依赖命令行的用户同时也是一个Feedly用户的话Feednix 是肯定值得去尝试的。我和Feednix的开发者Jarkore交流解决了一些问题。我想说对于[bug的报告][4]和修复他非常的积极。鼓励大家来试用Feednix并且给他(Jarkore)一些回馈。
--------------------------------------------------------------------------------
via: http://xmodulo.com/feedly-rss-feed-command-line-linux.html
作者:[Dan Nanni][a]
译者:[chenzhijun](https://github.com/chenzhijun)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://xmodulo.com/author/nanni
[1]:https://feedly.com/
[2]:https://github.com/Jarkore/Feednix
[3]:https://aur.archlinux.org/packages/feednix/
[4]:https://github.com/Jarkore/Feednix/issues

View File

@ -0,0 +1,275 @@
在Apache中使用mod\_security和mod\_evasive来抵御暴力破解和DDos攻击
================================================================================
对于那些需要在因特网上提供服务或托管主机的人来说,保证您的系统在面对攻击时的安全是一个重要的事情。
mod\_security一个开源的用于Web应用入侵检测及防护的引擎可以无缝地集成到Web服务器和mod\_evasive是两个在服务器端对抗暴力破解和(D)Dos攻击的非常重要的工具。
mod\_evasive如它的名字一样在受攻击时提供避实就虚的功能它像一个雨伞一样保护Web服务器免受那些威胁。
![](http://www.tecmint.com/wp-content/uploads/2012/06/Install-Mod_Security-Mod_evasive-in-CentOS.jpg)
*安装mod\_security和mod\_evasive来保护Apache*
在这篇文章中我们将讨论如何安装、配置以及在RHEL/CentOS6、7和Fedora 21-15上将它们整合到Apache。另外我们会模拟攻击以便验证服务器做出了正确的反应。
以上以您的系统中安装有LAMP服务器为基础所以如果您没有安装请先阅读下面链接的文章再开始阅读本文。
- [在RHEL/CentOS 7中安装LAMP][1]
LCTT 译注本文有修改。原文为了在RHEL/CentOS 7或Fedora 21中使用同样的工具而删除了自带的 firewalld使用了旧式的iptables。译者以为这样并不恰当因此译文中做了相应删节并增加了firewalld的相应脚本。
### 步骤 1: 安装mod\_security和mod\_evasive ###
另外在安装LAMP后您还需要在RHEL/CentOS 7/6中[开启EPEL仓库][3]来安装这两个包。Fedora用户不需要开启这个仓库因为epel已经是Fedora项目的一部分了。
# yum update && yum install mod_security mod_evasive
当安装结束后,您会在/etc/httpd/conf.d下找到这两个工具的配置文件。
# ls -l /etc/httpd/conf.d
![](http://www.tecmint.com/wp-content/uploads/2012/06/mod_security-mod_evasive-Configurations.png)
*mod\_security + mod\_evasive 配置文件*
现在为了整合这两个模块到Apache并在启动时加载它们。请确保下面几行出现在mod\_evasive.conf和mod\_security.conf的顶层部分它们分别为
LoadModule evasive20_module modules/mod_evasive24.so
LoadModule security2_module modules/mod_security2.so
请注意modules/mod\_security2.so和modules/mod\_evasive24.so都是从/etc/httpd到模块源文件的相对路径。您可以通过列出/etc/httpd/modules的内容来验证如果需要的话修改它
# cd /etc/httpd/modules
# pwd
# ls -l | grep -Ei '(evasive|security)'
![](http://www.tecmint.com/wp-content/uploads/2012/06/Verify-mod_security-mod_evasive-Modules.png)
*验证mod\_security + mod\_evasive模块*
接下来重启Apache并且核实它已加载了mod\_evasive和mod\_security
# service httpd restart [在RHEL/CentOS 6和Fedora 20-18上]
# systemctl restart httpd [在RHEL/CentOS 7和Fedora 21上]
----------
# httpd -M | grep -Ei '(evasive|security)' [输出已加载的静态模块和动态模块列表]
![](http://www.tecmint.com/wp-content/uploads/2012/06/Check-mod_security-mod_evasive-Loaded.png)
*检查mod\_security + mod\_evasive模块已加载*
### 步骤 2: 安装一个核心规则集并且配置mod\_security ###
简单来说一个核心规则集即CRS为web服务器提供特定状况下如何反应的指令。mod\_security的开发者们提供了一个免费的CRS叫做OWASP[开放Web应用安全项目]ModSecurity CRS可以从下面的地址下载和安装。
####下载OWASP CRS到为之创建的目录####
# mkdir /etc/httpd/crs-tecmint
# cd /etc/httpd/crs-tecmint
# wget https://github.com/SpiderLabs/owasp-modsecurity-crs/tarball/master
![](http://www.tecmint.com/wp-content/uploads/2012/06/Download-mod_security-Core-Rules.png)
*下载mod\_security核心规则*
#### 解压CRS文件并修改文件夹名称####
# tar xzf master
# mv SpiderLabs-owasp-modsecurity-crs-ebe8790 owasp-modsecurity-crs
![](http://www.tecmint.com/wp-content/uploads/2012/06/Extract-mod_security-Core-Rules.png)
*解压mod\_security核心规则*
####现在是时候配置mod\_security了####
将示例的规则文件owasp-modsecurity-crs/modsecurity_crs_10_setup.conf.example拷贝为同名的配置文件。
# cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_setup.conf
并通过将下面的几行插入到web服务器的主配置文件/etc/httpd/conf/httpd.conf来告诉Apache将这个文件和该模块放在一起使用。如果您选择解压打包文件到另一个文件夹那么您需要修改Include的路径
<IfModule security2_module>
Include crs-tecmint/owasp-modsecurity-crs/modsecurity_crs_10_setup.conf
Include crs-tecmint/owasp-modsecurity-crs/base_rules/*.conf
</IfModule>
最后,建议您在/etc/httpd/modsecurity.d目录下创建自己的配置文件在那里我们可以用我们自定义的文件夹接下来的示例中我们会将其命名为tecmint.conf而无需修改CRS文件的目录。这样做能够在CRS发布新版本时更加容易的升级。
<IfModule mod_security2.c>
SecRuleEngine On
SecRequestBodyAccess On
SecResponseBodyAccess On
SecResponseBodyMimeType text/plain text/html text/xml application/octet-stream
SecDataDir /tmp
</IfModule>
您可以在[SpiderLabs的ModSecurity GitHub][5]仓库中参考关于mod\_security目录的更完整的解释。
### 步骤 3: 配置mod\_evasive ###
mod\_evasive被配置为使用/etc/httpd/conf.d/mod\_evasive.conf中的指令。与mod\_security不同由于在包升级时没有规则来更新因此我们不需要独立的文件来添加自定义指令。
默认的mod\_evasive.conf开启了下列的目录注意这个文件被详细的注释了因此我们剔掉了注释以重点显示配置指令
<IfModule mod_evasive24.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>
这些指令的解释:
- DOSHashTableSize: 这个指令指明了哈希表的大小它用来追踪基于IP地址的活动。增加这个数字将使得站点访问历史的查询变得更快但如果被设置的太大则会影响整体性能。
- DOSPageCount: 在DOSPageInterval间隔内可由一个用户发起的针对特定的URI例如一个Apache 提供服务的文件)的同一个请求的数量。
- DOSSiteCount: 类似DOSPageCount但涉及到整个站点总共有多少的请求可以在DOSSiteInterval间隔内被发起。
- DOSBlockingPeriod: 如果一个用户超过了DOSSPageCount的限制或者DOSSiteCount他的源IP地址将会在DOSBlockingPeriod期间内被加入黑名单。在DOSBlockingPeriod期间任何从这个IP地址发起的请求将会遭遇一个403禁止错误。
尽可能的试验这些值以使您的web服务器有能力处理特定大小的负载。
**一个小警告**: 如果这些值设置的不合适,则您会蒙受阻挡合法用户的风险。
您也许还会用到以下其它有用的指令:
#### DOSEmailNotify ####
如果您运行有一个邮件服务器您可以通过Apache发送警告消息。注意如果SELinux已开启您需要授权apache用户SELinux的权限来发送email。您可以通过下面的命令来授予权限
# setsebool -P httpd_can_sendmail 1
接下来将这个指令和其他指令一起加入到mod\_evasive.conf文件。
DOSEmailNotify you@yourdomain.com
如果这个指令设置了合适的值并且您的邮件服务器在正常的运行则当一个IP地址被加入黑名单时会有一封邮件被发送到相应的地址。
#### DOSSystemCommand ####
它需要一个有效的系统命令作为参数,
DOSSystemCommand </command>
这个指令指定当一个IP地址被加入黑名单时执行的命令。它通常结合shell脚本来使用比如在脚本中添加一条防火墙规则来阻挡某个IP进一步的连接。
#####写一个shell脚本在防火墙阶段处理IP黑名单#####
当一个IP地址被加入黑名单我们需要阻挡它进一步的连接。我们需要下面的shell脚本来执行这个任务。在/usr/local/bin下创建一个叫做scripts-tecmint的文件夹或其他的名字以及一个叫做ban_ip.sh的文件。
**用于iptables防火墙**
#!/bin/sh
# 由mod_evasive检测出将被阻挡的IP地址
IP=$1
# iptables的完整路径
IPTABLES="/sbin/iptables"
# mod_evasive锁文件夹
mod_evasive_LOGDIR=/var/log/mod_evasive
# 添加下面的防火墙规则 (阻止所有从$IP流入的流量)
$IPTABLES -I INPUT -s $IP -j DROP
# 为了未来的检测,移除锁文件
rm -f "$mod_evasive_LOGDIR"/dos-"$IP"
**用于firewalld防火墙**
#!/bin/sh
# 由mod_evasive检测出将被阻挡的IP地址
IP=$1
# firewalld-cmd的完整路径
FIREWALL_CMD="/usr/bin/firewall-cmd"
# mod_evasive锁文件夹
mod_evasive_LOGDIR=/var/log/mod_evasive
# 添加下面的防火墙规则 (阻止所有从$IP流入的流量)
$FIREWALL_CMD --zone=drop --add-source $IP
# 为了未来的检测,移除锁文件
rm -f "$mod_evasive_LOGDIR"/dos-"$IP"
我们的DOSSystemCommand指令应该是这样的
DOSSystemCommand "sudo /usr/local/bin/scripts-tecmint/ban_ip.sh %s"
上面一行的%s代表了由mod_evasive检测到的攻击IP地址。
#####将apache用户添加到sudoers文件#####
请注意如果您不给予apache用户以无需终端和密码的方式运行我们脚本关键就是这个脚本的权限则这一切都不起作用。通常您只需要以root权限键入visudo来存取/etc/sudoers文件接下来添加下面的两行即可
apache ALL=NOPASSWD: /usr/local/bin/scripts-tecmint/ban_ip.sh
Defaults:apache !requiretty
![](http://www.tecmint.com/wp-content/uploads/2012/06/Add-Apache-User-to-Sudoers.png)
*添加Apache用户到Sudoers*
**重要**: 在默认的安全策略下您只能在终端中运行sudo。由于这个时候我们需要在没有tty的时候运行sudo我们必须像下图中那样注释掉下面这一行
#Defaults requiretty
![](http://www.tecmint.com/wp-content/uploads/2012/06/Disable-tty-for-Sudo.png)
*为Sudo禁用tty*
最后重启web服务器
# service httpd restart [在RHEL/CentOS 6和Fedora 20-18上]
# systemctl restart httpd [在RHEL/CentOS 7和Fedora 21上]
### 步骤4: 在Apache上模拟DDos攻击 ###
有许多工具可以在您的服务器上模拟外部的攻击。您可以google下“tools for simulating ddos attacks”来找一找相关的工具。
注意,您(也只有您)将负责您模拟所造成的结果。请不要考虑向不在您自己网络中的服务器发起模拟攻击。
假如您想对一个由别人托管的VPS做这些事情您需要向您的托管商发送适当的警告或就那样的流量通过他们的网络获得允许。Tecmint.com不会为您的行为负责
另外仅从一个主机发起一个Dos攻击的模拟无法代表真实的攻击。为了模拟真实的攻击您需要使用许多客户端在同一时间将您的服务器作为目标。
我们的测试环境由一个CentOS 7服务器[IP 192.168.0.17]和一个Windows组成在Windows[IP 192.168.0.103]上我们发起攻击:
![](http://www.tecmint.com/wp-content/uploads/2012/06/Confirm-Host-IPAddress.png)
I
*确认主机IP地址*
请播放下面的视频YT 视频,请自备梯子: https://www.youtube.com/-U_mdet06Jk 并跟从列出的步骤来模拟一个Dos攻击
然后攻击者的IP将被防火墙阻挡:
![](http://www.tecmint.com/wp-content/uploads/2012/06/Blocked-Attacker-IP.png)
*阻挡攻击者的IP地址*
### 结论 ###
在开启mod\_security和mod\_evasive的情况下模拟攻击会导致CPU和RAM用量在源IP地址被加入黑名单之前出现短暂几秒的使用峰值。如果没有这些模块模拟攻击绝对会很快将服务器击溃并使服务器在攻击期间无法提供服务。
我们很高兴听见您打算使用(或已经使用过)这些工具。我们期望得到您的反馈,所以,请在留言处留下您的评价和问题,谢谢!
### 参考链接 ###
- [https://www.modsecurity.org/][6]
- [http://www.zdziarski.com/blog/?page_id=442][7]
--------------------------------------------------------------------------------
via: http://www.tecmint.com/protect-apache-using-mod_security-and-mod_evasive-on-rhel-centos-fedora/
作者:[Gabriel Cánepa][a]
译者:[wwy-hust](https://github.com/wwy-hust)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.tecmint.com/author/gacanepa/
[1]:http://www.tecmint.com/install-lamp-in-centos-7/
[2]:https://linux.cn/article-4425-1.html
[3]:https://linux.cn/article-2324-1.html
[4]:https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project
[5]:https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#Configuration_Directives
[6]:https://www.modsecurity.org/
[7]:http://www.zdziarski.com/blog/?page_id=442

View File

@ -0,0 +1,80 @@
为LUKS加密的磁盘/分区做增量备份
================================================================================
我们中有些人出于安全原因,在家里或者[VPS][1]上通过[Linux统一密钥配置LUKS][2]为硬盘驱动器加密而这些驱动器的容量很快会增长到数十或数百GB。因此虽然我们享受着LUKS设备带来的安全感但是我们也该开始考虑一个可能的远程备份方案了。对于安全的非现场备份我们将需要能在LUKS加密的设备上以块级别操作的东西。因此最后我们发现这么个状况我们每次都需要传输想要做备份的整个LUKS设备比如说200GB大。很明显这是不可行的。我们该怎么来处理这个问题呢
### 一个解决方案: Bdsync ###
这时,一个卓越的开源工具来拯救我们了,它叫[Bdsync][3]多亏了Rolf Fokkens。顾名思义Bdsync可以通过网络同步“块设备”。对于快速同步Bdsync会生成并对比本地/远程块设备的块的MD5校验和只同步差异部分。rsync在文件系统级别可以做的Bdsync可以在块设备级别完成。很自然对于LUKS加密的设备它也能工作得很好。相当地灵巧
使用Bdsync首次备份将拷贝整个LUKS块设备到远程主机因而会花费大量时间来完成。然而在初始备份后如果我们在LUKS设备新建一些文件再次备份就会很快完成因为我们只需拷贝修改过的块。经典的增量备份在起作用了
### 安装Bdsync到Linux ###
Bdsync并不包含在Linux发行版的标准仓库中因而你需要从源代码来构建它。使用以下针对特定版本的指令来安装Bdsync及其手册页到你的系统中。
#### DebianUbuntu或Linux Mint ####
$ sudo apt-get install git gcc libssl-dev
$ git clone https://github.com/TargetHolding/bdsync.git
$ cd bdsync
$ make
$ sudo cp bdsync /usr/local/sbin
$ sudo mkdir -p /usr/local/man/man1
$ sudo sh -c 'gzip -c bdsync.1 > /usr/local/man/man1/bdsync.1.gz'
#### Fedora或CentOS/RHEL ####
$ sudo yum install git gcc openssl-devel
$ git clone https://github.com/TargetHolding/bdsync.git
$ cd bdsync
$ make
$ sudo cp bdsync /usr/local/sbin
$ sudo mkdir -p /usr/local/man/man1
$ sudo sh -c 'gzip -c bdsync.1 > /usr/local/man/man1/bdsync.1.gz'
### 对LUKS加密的设备实施非现场增量备份 ###
我假定你已经准备好了一个LUKS加密的块设备作为备份源/dev/LOCDEV。同时我假定你也有一台远程主机用以作为源设备的备份点/dev/REMDEV
你需要在两台系统上具有root帐号访问权限并且设置从本地访问远程的[无密码SSH访问][5]。最后你需要安装Bdsync到两台主机上。
要在本地主机上初始化一个远程备份进程我们需要以root执行以下命令
# bdsync "ssh root@remote_host bdsync --server" /dev/LOCDEV /dev/REMDEV | gzip > /some_local_path/DEV.bdsync.gz
这里需要进行一些说明。Bdsync客户端将以root打开一个到远程主机的SSH连接并执行带有--server选项的Bdsync客户端。明确说明一下/dev/LOCDEV是我们的本地主机上的源LUKS块设备而/dev/REMDEV是远程主机上的目标块设备。它们可以是/dev/sda作为整个磁盘或者/dev/sda2作为单个分区。本地Bdsync客户端的输出结果随后被管道输送到gzip用来在本地主机中创建DEV.bdsync.gz所谓的二进制补丁文件
你第一次运行上面的命令的时候,它会花费很长一段时间,这取决于你的互联网/局域网速度,以及/dev/LOCDEV的大小。记住你必须有两个大小相同的块设备/dev/LOCDEV和/dev/REMDEV
下一步是要将补丁文件从本地主机拷贝到远程主机。一种方式是使用scp
# scp /some_local_path/DEV.bdsync.gz root@remote_host:/remote_path
最后一步,是要在远程主机上执行以下命令,它们会将补丁文件应用到/dev/REMDEV
# gzip -d < /remote_path/DEV.bdsync.gz | bdsync --patch=/dev/DSTDEV
我推荐在使用真实数据部署Bdsync前使用一些没有任何重要数据小分区来做这些测试。在你完全弄懂整个设置是如何工作之后你可以开始备份真实数据。
### 尾声 ###
小结之我们演示了如何使用Bdsync来为LUKS设备实施增量备份。和rsync一样每次备份只有一小部分数据而不是整个LUKS设备需要被推送到非现场备份点这样会节省带宽和备份时间。剩下来需要通过SSH或SCP来保证所有数据传输的安全事实上设备自身是由LUKS加密的。也可以通过使用可以运行bdsync的专用用户而非root来改进该配置。我们也可以将bdsync用于任何块设备如LVM卷或RAID磁盘也可以很轻易地设置Bdsync备份本地磁盘到USB驱动器上。如你所见它有着无限可能性
随时分享你的想法。
--------------------------------------------------------------------------------
via: http://xmodulo.com/remote-incremental-backup-luks-encrypted-disk-partition.html
作者:[Iulian Murgulet][a]
译者:[GOLinux](https://github.com/GOLinux)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://xmodulo.com/author/iulian
[1]:http://xmodulo.com/go/digitalocean
[2]:http://xmodulo.com/how-to-create-encrypted-disk-partition-on-linux.html
[3]:http://bdsync.rolf-fokkens.nl/
[4]:http://xmodulo.com/recommend/linuxbook
[5]:https://linux.cn/article-5444-1.html

View File

@ -0,0 +1,70 @@
在 Linux 下体验谷歌 Material风格的GTK和图标主题Paper
================================================================================
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2015/02/Paper_theme_Material_Design.jpg)
[Paper][1]是一款即将与广大朋友们见面的一个图形工具包和图标主题,它的设计灵感来自于谷歌的设计语言[Material风格][2]。Paper由Sam Hewitt发起Sam是[Moka项目][3]的一员Moka总会设计出[让人满意的Ubuntu主题][4]。对于Paper我敢说只要它一经推出它必将是[最好的GTK主题开发包][5]之一。
对的你没有听错Paper主题还在开发阶段。因此我建议如果你想在你的Ubuntu或者它的衍生版本上安装Paper最好抱着试一试的实验心态。因为你多多少少会发现一些破损的图标但这并不影响整体体验非常棒
### 通过PPA在Ubuntu及其衍生版本上安装Paper主题 ###
Sam为Ubuntu和它的衍生版本设置了一个专用的PPA(Presonal Package Archives,个人软件包档案)。我推荐你通过PPA安装而不是下载Paper主题因为你将会定期更新主题。这个PPA可供使用的系统有Ubuntu 15.04, Ubuntu 14.10, Ubuntu 14.04, Elementary OS Freya, Elementary OS Luna, Linux Mint 17, Linux Mint 16 和其它的Ubuntu衍生版本。
打开终端,输入下列命令:
sudo add-apt-repository ppa:snwh/pulp
sudo apt-get update
sudo apt-get install paper-gtk-theme paper-icon-theme
### 下载Paper GTK和图标主题 ###
如果你不想用PPA你可以手动下载主题和图标。但是就像刚才所说这样你就无法自动更新。
- [下载Paper图标主题][6]
- [下载Paper的GTK主题][7]
#### 把它们用起来吧 ####
我希望你知道怎么在你的Ubuntu中安装或者更改主题。如果你不知道下面几个教程将帮助你安装一个新的主题。
- [如何在标准Ubuntu中更改主题][8]
- [如何在GNOME Shell中更改主题][9]
- [如何在Ubuntu Mint中更改主题][10]
- [如何在Elementary OS Freya中更改主题][11]
#### 就是这样! ####
因为我用过[Elementary OS Freya][12]一段时间这里有一些看起来像Elementary OS Freya的Paper主题和图标的截图。我使用了一张Material Design风格的墙纸这样可以更好的匹配主题和图标。
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2015/02/Material_Design_Paper_Theme_Elementary_OS_Freya_1.jpeg)
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2015/02/Material_Design_Paper_Theme_Elementary_OS_Freya.jpeg)
How do you find this Material design inspired theme? If you did use it, do share the screenshot of your desktop with rest of us here.
你觉得这个Material风格的主题怎么样如果你使用它的话在评论里和我们分享你的桌面截图吧
--------------------------------------------------------------------------------
via: http://itsfoss.com/install-paper-theme-linux/
作者:[Abhishek][a]
译者:[sevenot](https://github.com/sevenot)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://itsfoss.com/author/abhishek/
[1]:http://snwh.org/paper/
[2]:http://www.google.fr/design/spec/material-design/introduction.html
[3]:http://mokaproject.com/moka-icon-theme/
[4]:http://itsfoss.com/best-icon-themes-ubuntu-1404/
[5]:http://itsfoss.com/gnome-shell-themes-ubuntu-1404/
[6]:https://github.com/snwh/paper-icon-theme
[7]:https://github.com/snwh/paper-gtk-theme
[8]:http://itsfoss.com/how-to-install-themes-in-ubuntu-13-10/
[9]:http://itsfoss.com/install-switch-themes-gnome-shell/
[10]:http://itsfoss.com/install-icon-linux-mint/
[11]:http://itsfoss.com/install-themes-icons-elementary-os-freya/
[12]:http://itsfoss.com/tag/elementary-os-freya/

View File

@ -0,0 +1,78 @@
BSD 的那些事
================================================================================
![](http://www.linuxvoice.com/wp-content/uploads/2015/02/faq1-large1.png)
### 假如历史稍有不同今天你将听到的是“FreeBSD之声”... ###
LCTT 译注本文来自“Linux之声LinuxVoice”。
#### 那么这个Birsa Seva Dal是怎么回事呢难道不是一个印度的政治组织么 ####
真有趣您查阅了维基百科上“BSD”的消除分歧页面是为了讲上面这个笑话对么这里我们在讨论伯克利软件发行版Berkeley Software Distribution一个比您想象中用的更广泛的操作系统家族。
#### 抱歉,我有点 Hold 不住自己。那么,这些操作系统是怎么回事呢? ####
今天主要使用的BSD操作系统有三种。他们都基于Unix他们都开源并且大多担任服务器的角色但也能当作优秀的桌面和工作站。他们运行KDEFirefoxLibreOfficeApacheMySQL和许多你能说得出名字的开源软件。它们都很稳定、安全、支持许多不同的硬件。
#### 真棒你刚才在描述GNU/Linux吧 ####
是的Linux拥有我刚才提到的所有东西这也是为什么很多人从来不讨论BSD。在日常的使用中Linux和BSD并没有太多的不同这主要是因为他们都以Unix为基础并共用很多软件。您可以登录进远程主机在Vim中写一些Python代码使用Mutt检查您的email您可能并未意识到您在使用BSD。或许您在咖啡馆里正通过网络终端使用它但不知道他是BSD。
两者最大的区别在于开发模式和许可证为了解这些我们需要回到过去。在BSD中B代表着加利福尼亚大学伯克利分校University of California, Berkeley在1980年代那里是开源的Unix软件的发源地。到了90年代基于x86的PC变得流行许多人对在他们的家庭电脑中安装Unix类操作系统产生了兴趣。1992年一个叫做386BSD的项目在那时发布提供了上述功能。
#### 那么所有的Linux发行版那个时候在哪里呢 ####
问得好您也许知道这一年的前一年1991Linus Torvalds已经发布了他的内核当它与GNU项目结合时变成了完整的开源操作系统。Linus那时也在关注GNU的内核Hurd和386BSD并且他说过如果那时两个内核有一个可以正常使用他可能就不会创造Linux了。所以90年代的头几年开源操作系统生机勃勃没有人知道哪个系统会最终胜出。
接下来BSD遇到了一些麻烦。Unix最初的开发方AT&T试图从他们在操作系统方面的付出中获得一些利益他们声称BSD侵犯了他们的知识产权。此事最终以1992年的一桩诉讼结束它极大的抑制了BSD的开发进程。其结果就是许多BSD源码必须重写与此同时GNU/Linux已经丰富了功能变得稳定和流行了。
在90年代早期BSD被认为比GNU/Linux更加成熟如果没有那些法律麻烦他可能已经成为了x86 PC的标准了。今天我们可能都在使用它而不是Linux。
#### 但你提到BSD仍然被广泛的使用所以它后来有提升么 ####
是的。386BSD的开发停滞了但有两只开发团队通过互联网协作并创造了两个独立的成功的项目。FreeBSD成为了使用最广泛的BSD版本它目前是和Linux最相似的系统包括桌面和服务器版本。而NetBSD则聚焦于可移植性今天它可以运行在超过50种不同平台上均基于同样的代码版本。另一个版本是OpenBSD它在NetBSD开始不久就因为开发者的口角而作为NetBSD的分支诞生了今天它以专注于安全闻名。多年以来OpenBSD创建了许多程序它们都成了Linux的标准部分比如说OpenSSH - 甚至现在我们还有了LibreSSL。
#### 所以这三种版本的BSD和Linux发行版相似么 ####
也是也不是每个BSD版本都有自己的代码库、不同的开发团队。尽管他们间有许多共用的代码尤其是硬件驱动。但他们是各自拥有其特色、优点和缺点的相互独立的操作系统。
我们提到过BSD的开发模式是他们真正和GNU/Linux区别的重要特点。在GNU/Linux中没有人对其整体进行掌控一些团队在GNU组件方面工作一些团队在开发内核一些在开发启动脚本一些在写手册一些在写库等等。这样的开发模式通常被称作缺少中央权利的“荒蛮的美国西部”由发行版负责将所有的东西各自锲合。
而BSD则相反它们从中央化的源代码树中开发并作为一个整体。内核、库、系统组件和文档页都存在一个地方且以同样的方式使用。许多BSD粉丝声称这个特点给了操作系统更多的一致性和稳定性。通过我这些年使用BSD的经验来看我们可以证明手册页已经变得非常完备。
![](http://www.linuxvoice.com/wp-content/uploads/2015/02/faq2-large1.png)
#### 难道BSD没有使用GNU/Linux的任何东西么 ####
是的但除了GCC。几十年来GNU Compiler Collection已经成为了实际上的Unix系统标准编译器但FreeBSD最近已经转而使用LLVM/Clang了。值得注意的是BSD还是用了一些其他的开源项目但它们并属于GNU或者Linux比如说X Window SystemXFree86和X.org、Perl等等。并且幸亏有像POSIX一样的标准许多运行在Linux上的程序可以在BSD的许多版本上编译和运行。
因此您可以把LAMPLinux、Apache、MySQL和PHP中的L改成FreeBSD这样可以获得几乎同样的环境以及一些不同的特性例如在文件系统和驱动支持方面。FreeBSD有一些大型、海量的用户例如Netflix每天提供海量的数据。尽管FreeBSD可以做为一个不错的桌面环境但它的长处在于服务器方面它拥有超乎寻常的可靠性和网络性能。
OpenBSD更倾向用于安全性十分必要的场合如小型Web服务、文件托管、防火墙和网关。NetBSD是BSD主要发行版中最不流行的一个它能运行在几乎所有平台上包括古老的Amigas和Acorn boxes有时您可以在闭源的网络设备中找到它的身影。
#### 等等怎么会有人将开源代码闭源呢那在Linux中是不合适的 ####
对的这里我们谈到了它与GNU/Linux的主要不同。BSD版本的许可证很有趣就叫做BSD许可证非常不同于我们所知的GPL。对于新手来说BSD更简短。BSD许可证主要内容是对这份代码做你想做的事但要保留它的初始开发者的荣誉并且如果它搞坏你的电脑时不要提出诉讼。
因此该许可证中没有任何条款强制代码开源不像GPL它要求使用这份代码的用户将他们的修改也开源。这一重要的不同引起了互联网上无数的激烈讨论BSD的粉丝们说他们的许可证更加自由因为它不那么严格而GNU/GPL的粉丝说他们的证书才更自由因为它保留了真正的自由
#### 啊呀不管怎么说你已经引起了我的兴趣我在哪里能尝试这些可爱的BSD版本呢 ####
您大概已经可以猜到这些网站了 [www.openbsd.org][1]、[www.freebsd.org][2]、[www.netbsd.org][3]。在那里您可以下载ISO镜像在VirtualBox中启动它们然后开始玩耍。如果您已经用了一段时间的Linux你就会发现这并不难虽然您需要了解命令行。如果您在寻找一些对新手更加友好的东西可以试试PC-BSDPC-BSD([www.pcbsd.org][4])是一个基于FreeBSD的个性化定制版本它专注于桌面有美观的图形化安装器和超级简单的软件管理器。
祝你玩的愉快!
--------------------------------------------------------------------------------
via: http://www.linuxvoice.com/faq-bsd-2/
作者:[Mike Saunders][a]
译者:[wwy-hust](https://github.com/wwy-hust)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.linuxvoice.com/author/mike/
[1]:http://www.openbsd.org/
[2]:http://www.freebsd.org/
[3]:http://www.netbsd.org/
[4]:http://www.pcbsd.org/

View File

@ -0,0 +1,143 @@
用命令行工具Speedtest-CLI来测试你的上下行网速
================================================================================
我们经常需要到检查家里与办公室之间的网络是否连通那么我们要怎么做呢打开网站Speedtest.net然后开始测试。网站是通过加载浏览器中的JavaScript脚本然后选择最佳的服务器测速然后用Flash产生图形化的结果。
那么远程服务器呢要知道大多数远程服务器是没有浏览器可以打开web页面的。用浏览器打开网页测速的瓶颈就在此你不能按计划的对服务器进行定期的常规测试。这时需要到一个名为Speedtest-cli的软件来打破这个瓶颈它能让你通过命令行来测试互联网连接的速度。
#### Speedtest-cli是什么 ####
此程序是基于Python开发的脚本程序利用了speedtest.net的服务来测量出上下行的宽带。Speedtest-cli能根据机房离测速服务器的物理距离来列出测速服务器或者针对某一服务器进行测速同时还能为你生成一个URL以便你分享你的测速结果。
要在Linux上安装最新版本的speedtest-cli你必须安装2.4-3.4或者更高版本的Python。
### 在Linux上安装speedtest-cli ###
有两种方法可以安装speedtest-cli。第一种方法需要用到`python-pip`包管理器第二种方法需要安装Python脚本生成安装文件然后运行这里我们分别介绍两种方法
#### 使用pythin-pip安装speedtest-cli####
首先你需要安装`python-pip`包管理器之后你就可以用pip命令来安装speedtest-cli
$ sudo apt-get install python-pip
$ sudo pip install speedtest-cli
如果要把speedtest-cli升级至最新版本你需要输入以下命令
$ sudo pip install speedtest-cli --upgrade
#### 通过Pyhton脚本来安装speedtest-cli ####
首先要用wget命令从github上下来Python脚本然后解压提取下载的文件master.zip
$ wget https://github.com/sivel/speedtest-cli/archive/master.zip
$ unzip master.zip
提取出文件后,进入提取出的目录`speedtest-cli-master`然后使脚本可以执行。
$ cd speedtest-cli-master/
$ chmod 755 speedtest_cli.py
下一步,把可执行的脚本移动到`/usr/bin`文件夹,这样你就不用每次都输入完整的脚本路径了。
$ sudo mv speedtest_cli.py /usr/bin/
### 用speedtest-cli测试互联网连通速度###
**1. 要测试你的下载与上传速度,只需要运行`speedtest-cli`命令,不需要带参数。**
$ speedtest_cli.py
![Test Download Upload Speed in Linux](http://www.tecmint.com/wp-content/uploads/2015/03/Test-Download-Upload-Speed-in-Linux1.png)
*在Linux下测试上传下载速度*
**2. 测试上传下载的速度(以字节计算)**
$ speedtest_cli.py --bytes
![Test Internet Speed in Bytes](http://www.tecmint.com/wp-content/uploads/2015/03/Test-Speed-in-Bytes.png)
*测试bytes的速度*
**3. 工具提供一个链接来下载由你的宽带测试结果生成的图片,你可以分享给你的家人朋友。**
![Share Internet Speed Results](http://www.tecmint.com/wp-content/uploads/2015/03/Share-Internet-Speed-Results.png)
*分享测速结果*
下面的图片就是你通过以上的命令行测速而生成的图片
![Speed Test Results](http://www.tecmint.com/wp-content/uploads/2015/03/Speed-Test-Results.png)
*测速结果*
**4.如果你仅仅需要Ping上传下载的结果就运行以下命令**
$ speedtest_cli.py --simple
![Test Ping Download Upload Speed](http://www.tecmint.com/wp-content/uploads/2015/03/Test-Ping-Download-Upload-Speed1.png)
*测试Ping上传下载的速度*
**5. 列出`speedtest.net`所有的服务器距离你的物理距离单位是千米km**
$ speedtest_cli.py --list
![Check Speedtest.net Servers](http://www.tecmint.com/wp-content/uploads/2015/03/Check-Speedtest-Servers.png)
*列出Speedtest.net的服务器*
**6. 当获得一个非常长的服务器列表之后怎么列出我想要的某个服务器如果我要在speedtest.net服务器列表中找出位于Mumbai印度的服务器呢**
$ speedtest_cli.py --list | grep -i Mumbai
![Check Nearest Server](http://www.tecmint.com/wp-content/uploads/2015/03/Check-Nearest-Server.png)
*列出最近的服务器*
**7. 对指定的服务器进行测速。我们使用上面例子5和例子6中获取的服务器ID:**
$ speedtest_cli.py --server [server ID]
$ speedtest_cli.py --server [5060] ## 这里使用服务器ID为5060作为例子
![Test Connection Against Server](http://www.tecmint.com/wp-content/uploads/2015/03/Test-Connection-Against-Server.png)
*对指定的服务器进行测速*
**8. 输出`speedtest-cli`的版本信息和帮助文档**
$ speedtest_cli.py --version
![Check SpeedCli Version](http://www.tecmint.com/wp-content/uploads/2015/03/Check-SpeedCLi-Version.png)
*输出版本号*
$ speedtest_cli.py --help
![SpeedCli Help](http://www.tecmint.com/wp-content/uploads/2015/03/SpeedCli-Help.png)
*输出帮助文档*
**提醒:**报告中的延迟并不是确切的结果不应该过于依赖它这个数值可以当作相对延迟这对你选择某一测试服务器来说是可靠的。同时CPU和内存的容量会影响结果的准确度。
### 结论 ###
系统管理员和开发者应该必备这个简单的脚本工具这个轻量级的工具功能齐全真是太赞了。我不喜欢Speedtest.net的原因是它使用来flash相反speedtest-cli刚好戳中了我的痛点。
speedtest_cli是一个第三方工具也不能自动地记录下宽带速度。Speedtest.net拥有上百万的用户你可以自己[配制一个小型的测速服务器][1]。
上面就是所有内容,更多内容敬请关注我们。如果你有任何反馈记得在文章下方评论,如果你喜欢别忘了给我们点个赞,分享我们的文章。
--------------------------------------------------------------------------------
via: http://www.tecmint.com/check-internet-speed-from-command-line-in-linux/
作者:[Avishek Kumar][a]
译者:[NearTan](https://github.com/NearTan)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.tecmint.com/author/avishek/
[1]:http://www.tecmint.com/speedtest-mini-server-to-test-bandwidth-speed/

View File

@ -12,13 +12,13 @@
![](https://farm8.staticflickr.com/7288/16662287067_27888684a7_b.jpg)
让我们先来看看 weave 怎么工作:先创建一个由多个 peer 组成的对等网络,每个 peer 是一个虚拟路由器容器叫做“weave 路由器”,它们分布在不同的宿主机上。这个对等网络的每个 peer 之间会维持一个 TCP 链接,用于互相交换拓扑信息,它们也会建立 UDP 链接用于容器间通信。一个 weave 路由器通过桥接技术连接到其他本宿主机上的其他容器。当处于不同宿主机上的两个容器想要通信,一台宿主机上的 weave 路由器通过网桥截获数据包,使用 UDP 协议封装后发给另一台宿主机上的 weave 路由器。
让我们先来看看 weave 怎么工作:先创建一个由多个 peer 组成的对等网络,每个 peer 是一个虚拟路由器容器叫做“weave 路由器”,它们分布在不同的宿主机上。这个对等网络的每个 peer 之间会维持一个 TCP 链接,用于互相交换拓扑信息,它们也会建立 UDP 链接用于容器间通信。一个 weave 路由器通过桥接技术连接到本宿主机上的其他容器。当处于不同宿主机上的两个容器想要通信,一台宿主机上的 weave 路由器通过网桥截获数据包,使用 UDP 协议封装后发给另一台宿主机上的 weave 路由器。
每个 weave 路由器会刷新整个对等网络的拓扑信息,像容器的 MAC 地址(就像交换机的 MAC 地址学习一样获取其他容器的 MAC 地址因此它可以决定数据包的下一跳是往哪个容器的。weave 能让两个处于不同宿主机的容器进行通信,只要这两台宿主机在 weave 拓扑结构内连到同一个 weave 路由器。另外weave 路由器还能使用公钥加密技术将 TCP 和 UDP 数据包进行加密。
每个 weave 路由器会刷新整个对等网络的拓扑信息,可以称作容器的 MAC 地址(如同交换机的 MAC 地址学习一样获取其他容器的 MAC 地址因此它可以决定数据包的下一跳是往哪个容器的。weave 能让两个处于不同宿主机的容器进行通信,只要这两台宿主机在 weave 拓扑结构内连到同一个 weave 路由器。另外weave 路由器还能使用公钥加密技术将 TCP 和 UDP 数据包进行加密。
### 准备工作 ###
在使用 weave 之前,你需要在所有宿主机上安装 Docker[2] 环境,参考[这些][3][教程][4],在 Ubuntu 或 CentOS/Fedora 发行版中安装 Docker。
在使用 weave 之前,你需要在所有宿主机上安装 [Docker][2] 环境,参考[这些][3][教程][4],在 Ubuntu 或 CentOS/Fedora 发行版中安装 Docker。
Docker 环境部署完成后,使用下面的命令安装 weave
@ -26,7 +26,7 @@ Docker 环境部署完成后,使用下面的命令安装 weave
$ chmod a+x weave
$ sudo cp weave /usr/local/bin
注意你的 PATH 环境变量要包含 /usr/local/bin 这个路径,请在 /etc/profile 文件中加入一行LCTT 注:要使环境变量生效,你需要执行这个命令: src /etc/profile
注意你的 PATH 环境变量要包含 /usr/local/bin 这个路径,请在 /etc/profile 文件中加入一行LCTT 注:要使环境变量生效,你需要执行这个命令: source /etc/profile
export PATH="$PATH:/usr/local/bin"
@ -34,15 +34,15 @@ Docker 环境部署完成后,使用下面的命令安装 weave
Weave 在 TCP 和 UDP 上都使用 6783 端口,如果你的系统开启了防火墙,请确保这两个端口不会被防火墙挡住。
### 在每台宿主机上启 Weave 路由器 ###
### 在每台宿主机上启 Weave 路由器 ###
当你想要让处于在不同宿主机上的容器能够互相通信,第一步要做的就是在每台宿主机上启 weave 路由器。
当你想要让处于在不同宿主机上的容器能够互相通信,第一步要做的就是在每台宿主机上启 weave 路由器。
第一台宿主机,运行下面的命令,就会创建并开启一个 weave 路由器容器LCTT 注前面说过了weave 路由器也是一个容器):
第一台宿主机,运行下面的命令,就会创建并开启一个 weave 路由器容器LCTT 前面说过了weave 路由器也是一个容器):
$ sudo weave launch
第一次运行这个命令的时候,它会下载一个 weave 镜像,这会花一些时间。下载完成后就会自动运行这个镜像。成功启动后,终端会打印这个 weave 路由器的 ID 号。
第一次运行这个命令的时候,它会下载一个 weave 镜像,这会花一些时间。下载完成后就会自动运行这个镜像。成功启动后,终端会输出这个 weave 路由器的 ID 号。
下面的命令用于查看路由器状态:
@ -52,7 +52,7 @@ Weave 在 TCP 和 UDP 上都使用 6783 端口,如果你的系统开启了防
第一个 weave 路由器就绪了,目前为止整个 peer 对等网络中只有一个 peer 成员。
你也可以使用 doceker 的命令来查看 weave 路由器的状态:
你也可以使用 docker 的命令来查看 weave 路由器的状态:
$ docker ps
@ -66,7 +66,7 @@ Weave 在 TCP 和 UDP 上都使用 6783 端口,如果你的系统开启了防
![](https://farm8.staticflickr.com/7608/16868571891_e66d4b8841_c.jpg)
当你开启更多路由器,这个 peer 成员列表会更长。当你新开一个路由器时,要指定前一个宿主机的 IP 地址,请注意不是第一个宿主机的 IP 地址。
当你开启更多路由器,这个 peer 成员列表会更长。当你新开一个路由器时,要指定前一个宿主机的 IP 地址,请注意不是第一个宿主机的 IP 地址LCTT 译注:链状结构)
现在你已经有了一个 weave 网络了,它由位于不同宿主机的 weave 路由器组成。
@ -82,7 +82,7 @@ Weave 在 TCP 和 UDP 上都使用 6783 端口,如果你的系统开启了防
hostA:~$ sudo weave run 10.0.0.1/24 -t -i ubuntu
成功运行后,终端会打印出容器的 ID 号。你可以使用这个 ID 来访问这个容器:
成功运行后,终端会显示出容器的 ID 号。你可以使用这个 ID 来访问这个容器:
hostA:~$ docker attach <container-id>
@ -124,7 +124,7 @@ weave 提供了一些非常巧妙的特性,我在这里作下简单的介绍
![](https://farm8.staticflickr.com/7639/16247212144_c31a49714d_c.jpg)
现在这个容器可以与 10.10.0.0/24 网络上的其它容器进行通信了。当你要把容器加入一个网络,而这个网络暂时不可用时,上面的步骤就很有帮助了。
现在这个容器可以与 10.10.0.0/24 网络上的其它容器进行通信了。这在当你创建一个容器而网络信息还不确定时就很有帮助了。
#### 将 weave 网络与宿主机网络整合起来 ####
@ -134,13 +134,13 @@ weave 提供了一些非常巧妙的特性,我在这里作下简单的介绍
hostA:~$ sudo weave expose 10.0.0.100/24
这个命令把 IP 地址 10.0.0.100 分配给宿主机 hostA这样一来 hostA 也连到了 10.0.0.0/24 网络上了。很明显,你在为宿主机选择 IP 地址的时候,需要选一个没有被其他容器使用的地址。
这个命令把 IP 地址 10.0.0.100 分配给宿主机 hostA这样一来宿主机 hostA 也连到了 10.0.0.0/24 网络上了。显,你在为宿主机选择 IP 地址的时候,需要选一个没有被其他容器使用的地址。
现在 hostA 就可以访问 10.0.0.0/24 上的所有容器了,不管这些容器是否位于 hostA 上。好巧妙的设定啊32 个赞!
### 总结 ###
如你所见weave 是一个很有用的 docker 网络配置工具。这个教程只是[它强悍功能][5]的冰山一角。如果你想进一步玩玩,你可以试试它的以下功能:多跳路由功能,这个在 multi-cloud 环境LCTT 注:多云,企业使用多个不同的云服务提供商的产品,比如 IaaS 和 SaaS来承载不同的业务下还是很有用的动态重路由功能是一个很巧妙的容错技术或者它的分布式 DNS 服务,它允许你为你的容器命名。如果你决定使用这个好东西,欢迎分享你的使用心得。
如你所见weave 是一个很有用的 docker 网络配置工具。这个教程只是它[强悍功能][5]的冰山一角。如果你想进一步玩玩,你可以试试它的以下功能:多跳路由功能,这个在 multi-cloud 环境LCTT 注:多云,企业使用多个不同的云服务提供商的产品,比如 IaaS 和 SaaS来承载不同的业务下还是很有用的动态重路由功能是一个很巧妙的容错技术或者它的分布式 DNS 服务,它允许你为你的容器命名。如果你决定使用这个好东西,欢迎分享你的使用心得。
--------------------------------------------------------------------------------

View File

@ -1,46 +1,44 @@
12个进程管理命令
12个进程管理命令介绍
================================================================================
每个程序在执行时叫进程。当程序是在存储中是可执行文件并且运行的时候,每个进程会被动态得分配系统资源,内存,安全属性和与之相关的状态。可以有多个进程关联同一个程序,并同时执行不会互相干扰。操作系统会有效地管理和追踪所有运行着的进程。
执行中的程序在称作进程。当程序以可执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源、内存、安全属性和与之相关的状态。可以有多个进程关联同一个程序,并同时执行不会互相干扰。操作系统会有效地管理和追踪所有运行着的进程。
为了管理这些进程,用户应该能够:
- 查看所有运行中的进程
- 查看进程消耗资源
- 定位个别进程并且可以执行指定动
- 定位个别进程并且对其执行指定操
- 改变进程的优先级
- 杀死指定进程
- 限制进程的有效系统资源
- 等
- 限制进程可用的系统资源等
Linux提供了许多命令用户来高效掌控上述的操作。接下来,一个一个的来讲解下。
Linux提供了许多命令来让用户来高效掌控上述的操作。接下来,一个一个的来讲解下。
### 1. ps ###
'ps'是最基础浏览系统中的进程的命令。能列出系统中运行的进程,包括进程号命令CPU使用量内存使用量等。下述选项可以得到更多有用的消息。
'ps'是Linux 中最基础浏览系统中的进程的命令。能列出系统中运行的进程,包括进程号、命令、CPU使用量、内存使用量等。下述选项可以得到更多有用的消息。
ps -a - 列出所有运行中/激活进程
![Output of "ps -a" command](http://blog.linoxide.com/wp-content/uploads/2015/02/ps-a2.png)
ps -ef |grep - 列出需要进程
ps -aux - 展示进程包括、终端x和用户u信息如USER, PID, %CPU, %MEM等
ps -aux - 显示进程信息包括无终端的x和针对用户u的进程如USER, PID, %CPU, %MEM等
### 2. pstree ###
linux中每一个进程都是由父进程创建的。此命令帮助可视化进程通过显示进程树状图表展示进程间关系。如果使用pid了那么树的根是pid。不然将会是init
linux中每一个进程都是由其父进程创建的。此命令以可视化方式显示进程通过显示进程的树状图来展示进程间关系。如果指定了pid了那么树的根是该pid不然将会是initpid 1
![pstree](http://blog.linoxide.com/wp-content/uploads/2015/02/pstree.png)
### 3. top ###
top是一个更加有用的命令通过不同的进程所使用的资源可以监视系统。它提供实时的系统状态信息。显示进程的数据包括PID进程用户优先值%CPU%memory等。可以使用这些显示指示出资源使用量。
top是一个更加有用的命令可以监视系统中不同的进程所使用的资源。它提供实时的系统状态信息。显示进程的数据包括 PID、进程属主、优先级、%CPU、%memory等。可以使用这些显示指示出资源使用量。
![top](http://blog.linoxide.com/wp-content/uploads/2015/02/top.png)
### 4. htop ###
htop与top很类似但是htop是交互式的模式进程查看器。它通过文字图像显示每一个CPU和内存使用量、swap使用量。上下键选择进程F7和F8改变优先级F9杀死进程。Htop不是系统默认所以需要额外安装。
htop与top很类似但是htop是交互式的文本模式的进程查看器。它通过文字图形化地显示每一个进程的CPU和内存使用量、swap使用量。使用上下光标键选择进程F7和F8改变优先级F9杀死进程。Htop不是系统默认安装的,所以需要额外安装。
![htop output](http://blog.linoxide.com/wp-content/uploads/2015/03/htop1.png)
@ -48,7 +46,7 @@ htop与top很类似但是htop是交互式的模式进程查看器。它通过
通过nice命令的帮助用户可以设置和改变进程的优先级。提高一个进程的优先级内核会分配更多CPU时间片给这个进程。默认情况下进程以0的优先级启动。进程优先级可以通过top命令显示的NInice value列查看。
进程优先级值的范围从-20到19。值越低优先。
进程优先级值的范围从-20到19。值越低优先级越高
nice <优先值> <进程名> - 通过给定的优先值启动一个程序
@ -56,17 +54,17 @@ htop与top很类似但是htop是交互式的模式进程查看器。它通过
![changed nice value of 'top'](http://blog.linoxide.com/wp-content/uploads/2015/02/top-nice.png)
上述命令例子可以看到top命令获得了-3的优先值。
上述命令例子可以看到top命令获得了-3的优先值。
### 6. renice ###
renice命令类似nice命令。使用这个命令可以改变正在运行的进程优先值。注意用户只能改变属于他们的进程的优先值。
renice命令类似nice命令。使用这个命令可以改变正在运行的进程优先值。注意用户只能改变属于他们自己的进程的优先值。
renice -n -p - 改变指定进程的优先值
![renice command](http://blog.linoxide.com/wp-content/uploads/2015/02/renice2.png)
优先值初始化为0的3806号进程优先值已经变成了4.
初始优先值为0的3806号进程优先值已经变成了4.
renice -u -g - 通过指定用户和组来改变进程优先值
@ -76,7 +74,7 @@ renice命令类似nice命令。使用这个命令可以改变正在运行的进
### 7. kill ###
这个命令通过发送信号结束进程。如果一个进程没有响应杀死命令,这也许就需要强制杀死,使用-9参数来执行。注意使用强制杀死的时候一定要小心因为没有机会确定是否写入完成、是否结束等。如果我们不知道进程PID或者打算用名字杀死进程时候killall就能派上用场。
这个命令用于发送信号来结束进程。如果一个进程没有响应杀死命令,这也许就需要强制杀死,使用-9参数来执行。注意使用强制杀死的时候一定要小心因为进程没有时机清理现场,也许写入文件没有完成。如果我们不知道进程PID或者打算用名字杀死进程时候killall就能派上用场。
kill <pid>
@ -84,7 +82,7 @@ renice命令类似nice命令。使用这个命令可以改变正在运行的进
killall -9 - 杀死所有拥有同样名字的进程
如果你使用kill你需要知道进程ID号。pkill是类似的命令但只需要一个模式,如果进程名,进程拥有者等
如果你使用kill你需要知道进程ID号。pkill是类似的命令,但使用模式匹配,如进程名,进程拥有者等。
pkill <进程名>
@ -94,17 +92,17 @@ renice命令类似nice命令。使用这个命令可以改变正在运行的进
### 8. ulimit ###
命令在控制系统资源在shell和进程上的分配量。对于系统管理员是最有用的可以管理系统倾向和性能问题。限制资源大小可以确保重要进程持续运行,其他进程不会占用过多资源。
该命令用于控制系统资源在shell和进程上的分配量。对于系统管理员是最有用的可以管理重度使用和存在性能问题的系统。限制资源大小可以确保重要进程持续运行,其他进程不会占用过多资源。
ulimit -a - 显示当前用户关联的资源限制
![ulimit -a](http://blog.linoxide.com/wp-content/uploads/2015/02/ulimit-a.png)
-f - 最大文件大小
-f - 最大文件尺寸大小
-v - 最大虚拟内存大小KB
-n - 最大文件描述符加1
-n - 增加最大文件描述符数量
-H : 改变和报告硬限制
@ -114,13 +112,13 @@ renice命令类似nice命令。使用这个命令可以改变正在运行的进
### 9. w ###
w提供正确登录的用户和其执行的进程的信息。显示信息头包含信息像现在时间系统运行时长登录用户总数过去1515分钟负载均衡数。
w 提供当前登录的用户及其正在执行的进程的信息。显示信息头包含信息如当前时间、系统运行时长、登录用户总数、过去的1515分钟内的负载均衡数。
基于这些用户信息,用户可以在终止进程前查看不属于他们的进程。
基于这些用户信息,用户在终止不属于他们的进程时要小心
!['w' command](http://blog.linoxide.com/wp-content/uploads/2015/02/w.png)
**who**是类似命令,提供列表,包含当前登录用户,系统启动时间,运行级别等。
**who**是类似命令,提供当前登录用户列表、系统启动时间、运行级别等。
!['who' command](http://blog.linoxide.com/wp-content/uploads/2015/02/who.png)
@ -130,7 +128,7 @@ w提供正确登录的用户和其执行的进程的信息。显示信息头包
### 10. pgrep ###
pgrep为"进程号全局正则匹配打印"。命令扫描当前运行进程然后列出选择标准匹配出的进程ID到标准输出。对于通过名字检索进程号是很有用。
pgrep的意思是"进程号全局正则匹配输出"。该命令扫描当前运行进程,然后按照命令匹配条件列出匹配结果到标准输出。对于通过名字检索进程号是很有用。
pgrep -u mint sh
@ -140,9 +138,9 @@ pgrep为"进程号全局正则匹配打印"。命令扫描当前运行进程,
### 11. fg , bg ###
有时命令需要很长的时间才能执行完成。对于这种情况我们使用bg命令可以将任务放在后台执行fg可以调到前台来使用。
有时命令需要很长的时间才能执行完成。对于这种情况我们使用bg命令可以将任务放在后台执行而用fg可以调到前台来使用。
通过‘&,我们后台启动一个程序:
我们可以通过‘&’在后台启动一个程序:
find . -name *iso > /tmp/res.txt &
@ -152,7 +150,7 @@ pgrep为"进程号全局正则匹配打印"。命令扫描当前运行进程,
ctrl+z - 挂起当前执行程序
bg - 将程序发送到后台运行
bg - 将程序到后台运行
我们可以使用jobs命令列出所有后台进程。
@ -160,7 +158,7 @@ pgrep为"进程号全局正则匹配打印"。命令扫描当前运行进程,
使用fg命令可以将后台程序调到前台执行。
fg %
fg %进程id
![output of fg, bg and jobscommands](http://blog.linoxide.com/wp-content/uploads/2015/03/fg-bg-jobs.png)
@ -172,13 +170,13 @@ ipcs命令报告进程间通信设施状态。共享内存信号量和消
ipcs -p -m
下面屏幕截图列出了共享内存段的创建者ID和进程ID。
下面屏幕截图列出了最近访问了共享内存段的进程的创建者ID和进程ID。
![ipcs command](http://blog.linoxide.com/wp-content/uploads/2015/03/ipcs.png)
### 总结 ###
总之 ,这些命令可以帮助管理员修复问题和改善性能。同样作为一名普通用户也需要解决进程出现的问题。所以,熟悉如此繁多的命令,从能有效管理进程是行之有效。
总之 ,这些命令可以帮助管理员修复问题和改善性能。同样作为一名普通用户也需要解决进程出现的问题。所以,熟悉如此繁多的命令,从能有效管理进程是行之有效。
--------------------------------------------------------------------------------
@ -186,7 +184,7 @@ via: http://linoxide.com/linux-command/process-management-commands-linux/
作者:[B N Poornima][a]
译者:[VicYu/Vic020](http://vicyu.net)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,18 +1,18 @@
如何在Linux下使用Gitblit工具创建Git仓库服务
如何在Linux下使用Gitblit工具创建Git仓库服务
================================================================================
朋友今天我们将学习如何在你的Linux服务器或者PC上安装Gitblit工具。首先我们看看什么是Git它的功能以及安装Gitblit的步骤。[Git是分布式版本控制系统][1]它强调速度、数据一致性并且支持分布式、非线性工作流。它最初由Linus Torvalds在2005年为Linux内核设计和开发使用GPL2证书并因此成为软件开发中使用最广泛的版本控制系统。
朋友今天我们将学习如何在你的Linux服务器或者PC上安装Gitblit工具。首先我们看看什么是Git它的功能以及安装Gitblit的步骤。[Git是分布式版本控制系统][1]它强调速度、数据一致性并且支持分布式、非线性工作流。它最初由Linus Torvalds在2005年为Linux内核设计和开发使用GPLv2证书并从此成为软件开发中使用最广泛的版本控制系统。
[Gitblit是完全开源的软件][2]它基于纯粹的Java堆栈被设计以在Git仓库速度和效率方面胜任从小型到极大型的项目。它很容易学习和上手并有着闪电般的性能。它在廉价的本地分支、便于staging、多工作流等方面远胜过一些SCM版本控制工具比如Subversion、CVS、Perforce和ClearCase
[Gitblit是完全开源的软件][2]它基于纯粹的Java堆栈被设计以在Git仓库速度和效率方面胜任从小型到极大型的项目。它很容易学习和上手并有着闪电般的性能。它在很多方面远胜 Subversion、CVS、Perforce和ClearCase等SCM版本控制工具比如如快速本地分支、易于暂存、多工作流等
#### Gitblit的功能 ####
- 它可以做为一个无声的仓库视图,没有管理控制以及用户账户。
- 它可以做为完整的Git堆栈拥有clone, pushing和仓库存取控制。
- 它能独立于其他Git工具使用包括实际的Git它能和您已创建的工具合作。
- 它可以做为一个仓库视图,没有管理控制以及用户账户。
- 它可以做为完整的Git服务,拥有克隆、推送和仓库访问控制。
- 它能独立于其他Git工具使用包括实际的Git它能和您已有的工具协作。
### 1.创建Gitblit安装目录 ###
首先我们将在我们的服务器上建立一个目录,我们将在该目录下安装最新的Gitblit。
首先我们将在我们的服务器上建立一个目录,在该目录下安装最新的Gitblit。
$ sudo mkdir -p /opt/gitblit
@ -28,7 +28,7 @@
![下载gitblit安装包](http://blog.linoxide.com/wp-content/uploads/2015/01/downloading-gitblit.png)
接下来,我们将解压下载到的tarball压缩包至之前创建的目录 /opt/gitblit/
接下来我们将下载到的tar压缩包解压至之前创建的目录 /opt/gitblit/
$ sudo tar -zxvf gitblit-1.6.2.tar.gz
@ -42,7 +42,7 @@
另一种是将gitblit添加为服务。下面是在linux下将gitblit添加为服务的步骤。
由于我在使用Ubuntu下面的命令将是 sudo cp service-ubuntu.sh /etc/init.d/gitblit所以请根据你的发行版修改文件名service-ubuntu.sh为相应的你运行的发行版。
由于我在使用Ubuntu下面的命令将是 sudo cp service-ubuntu.sh /etc/init.d/gitblit所以请根据你的发行版修改文件名service-ubuntu.sh为相应的你运行的发行版。
$ sudo ./install-service-ubuntu.sh
@ -50,13 +50,13 @@
![启动gitblit服务](http://blog.linoxide.com/wp-content/uploads/2015/01/starting-gitblit-service.png)
在你的浏览器中打开http://localhost:8080或https://localhost:8443也可以将localhost根据本地配置替换为IP地址。输入默认的管理员凭证admin/admin并点击login按钮。
在你的浏览器中打开`http://localhost:8080``https://localhost:8443`也可以将localhost根据本地配置替换为IP地址。输入默认的管理员凭证admin / admin并点击login按钮。
![gitblit欢迎页面](http://blog.linoxide.com/wp-content/uploads/2015/01/gitblit-welcome.png)
现在我们将添加一个新的用户。首先你需要以admin用户登录username = **admin**password = **admin**
然后,点击 user icon > users > (+) new user 来创建一个新用户,如下图所示。
然后,点击用户图标 > users > (+) new user 来创建一个新用户,如下图所示。
![添加新用户](http://blog.linoxide.com/wp-content/uploads/2015/01/add-user.png)
@ -73,7 +73,7 @@
git remote add origin ssh://arunlinoxide@localhost:29418/linoxide.com.git
git push -u origin master
请将用户名arunlinoxide替换为你添加的用户名。
请将其中的用户名arunlinoxide替换为你添加的用户名。
#### 在命令行中push一个已存在的仓库 ####
@ -84,7 +84,7 @@
### 结论 ###
欢呼吧我们已经在Linux电脑中安装好了最新版本的Gitblit。接下来我们便可以在我们的大小工程中享受这样一个优美的版本控制系统。有了Gitblit版本控制便再容易不过了。它有易于学习、轻量级、高性能的特点。因此如果你有任何的问题、建议和反馈请在留言处留言。
欢呼吧我们已经在Linux电脑中安装好了最新版本的Gitblit。接下来我们便可以在我们的大小项目中享受这样一个优美的版本控制系统。有了Gitblit版本控制便再容易不过了。它有易于学习、轻量级、高性能的特点。因此如果你有任何的问题、建议和反馈请在留言处留言。
--------------------------------------------------------------------------------
@ -92,7 +92,7 @@ via: http://linoxide.com/linux-how-to/serve-git-repositories-gitblit/
作者:[Arun Pyasi][a]
译者:[wwy-hust](https://github.com/wwy-hust)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,6 +1,7 @@
如何在 Docker 容器里的 Nginx 中安装 WordPress
如何在 Docker 容器中架设一个完整的 WordPress 站点
================================================================================
大家好,今天我们来学习一下如何在 Docker 容器上运行的 Nginx Web 服务器中安装 WordPress。WordPress 是一个很好的免费开源的内容管理系统,全球成千上万的网站都在使用它。[Docker][1] 是一个提供开放平台来打包,分发和运行任何应用的开源轻量级容器项目。它没有语言支持,框架或打包系统的限制,可以在从小的家用电脑到高端服务器的任何地方任何时间运行。这让它们成为可以用于部署和扩展网络应用,数据库和后端服务而不必依赖于特定的栈或者提供商的很好的构建块。
大家好,今天我们来学习一下如何在 Docker 容器里运行的 Nginx Web 服务器中安装 WordPress。WordPress 是一个很好的免费开源的内容管理系统,全球成千上万的网站都在使用它。[Docker][1] 是一个开源项目,提供了一个可以打包、装载和运行任何应用的轻量级容器的开放平台。它没有语言支持、框架和打包系统的限制,从小型的家用电脑到高端服务器,在何时何地都可以运行。这使它们可以不依赖于特定软件栈和供应商,像一块块积木一样部署和扩展网络应用、数据库和后端服务。
今天,我们会在 docker 容器上部署最新的 WordPress 软件包,包括需要的前提条件,例如 Nginx Web 服务器、PHP5、MariaDB 服务器等。下面是在运行在 Docker 容器上成功安装 WordPress 的简单步骤。
@ -14,13 +15,13 @@
# systemctl restart docker.service
### 2. 创建 WordPress Docker 文件 ###
### 2. 创建 WordPress 的 Dockerfile ###
我们需要创建用于自动安装 wordpress 以及前提条件的 docker 文件。这个 docker 文件将用于构建 WordPress 的安装镜像。这个 WordPress docker 文件会从 Docker 库中心获取 CentOS 7 镜像并用最新的可用更新升级系统。然后它会安装必要的软件,例如 Nginx Web 服务器、PHP、MariaDB、Open SSH 服务器以及其它保证 Docker 容器正常运行不可缺少的组件。最后它会执行一个初始化 WordPress 安装的脚本。
我们需要创建用于自动安装 wordpress 以及其前置需求的 Dockerfile。这个 Dockerfile 将用于构建 WordPress 的安装镜像。这个 WordPress Dockerfile 会从 Docker Registry Hub 获取 CentOS 7 镜像并用最新的可用更新升级系统。然后它会安装必要的软件,例如 Nginx Web 服务器、PHP、MariaDB、Open SSH 服务器以及其它保证 Docker 容器正常运行不可缺少的组件。最后它会执行一个初始化 WordPress 安装的脚本。
# nano Dockerfile
然后,我们需要将下面的配置行添加到 Docker 文件中。
然后,我们需要将下面的配置行添加到 Dockerfile中。
FROM centos:centos7
MAINTAINER The CentOS Project <cloud-ops@centos.org>
@ -50,9 +51,9 @@
![Wordpress Docker 文件](http://blog.linoxide.com/wp-content/uploads/2015/03/Dockerfile-wordpress.png)
### 3. 创建启动 script ###
### 3. 创建启动脚本 ###
我们创建了 docker 文件之后,我们需要创建用于运行和配置 WordPress 安装的脚本,名称为 start.sh。它会为 WordPress 创建并配置数据库和密码。用我们喜欢的文本编辑器打开 start.sh。
我们创建了 Dockerfile 之后,我们需要创建用于运行和配置 WordPress 安装的脚本,名称为 start.sh。它会为 WordPress 创建并配置数据库和密码。用我们喜欢的文本编辑器打开 start.sh。
# nano start.sh
@ -86,7 +87,7 @@
}
__handle_passwords() {
# 在这里我们生成随机密码(感谢 pwgen)。前面两个用于 mysql 用户,最后一个用于 wp-config.php 的随机密钥。
# 在这里我们生成随机密码(多亏了 pwgen)。前面两个用于 mysql 用户,最后一个用于 wp-config.php 的随机密钥。
WORDPRESS_DB="wordpress"
MYSQL_PASSWORD=`pwgen -c -n -1 12`
WORDPRESS_PASSWORD=`pwgen -c -n -1 12`
@ -292,7 +293,7 @@
### 5. 构建 WordPress 容器 ###
现在,完成了创建配置文件和脚本之后,我们终于要使用 docker 文件来创建安装最新的 WordPress CMS(译者注Content Management System,内容管理系统)所需要的容器,并根据配置文件进行配置。做到这点,我们需要在对应的目录中运行以下命令。
现在,完成了创建配置文件和脚本之后,我们终于要使用 Dockerfile 来创建安装最新的 WordPress CMS译者注Content Management System内容管理系统所需要的容器,并根据配置文件进行配置。做到这点,我们需要在对应的目录中运行以下命令。
# docker build --rm -t wordpress:centos7 .
@ -340,7 +341,7 @@ via: http://linoxide.com/linux-how-to/install-wordpress-nginx-docker-container/
作者:[Arun Pyasi][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -0,0 +1,88 @@
六种在 Linux 上为你带来 iTunes 般体验的方法
================================================================================
![](http://cdn.makeuseof.com/wp-content/uploads/2015/04/itunes-linux-840x420.jpg?35dc20)
随着你对 Linux 的熟悉(也许会成为你首要使用的操作系统),你终将会寻找能在 Linux 上有效管理音乐的工具。你首先想到 iTunes因为它是近几年最流行的音乐管理工具但你马上会发现 iTunes 并没有 Linux 版本。而且,现在,你会发现还有比 iTunes 更好的音乐管理工具。
尽管如此这并不意味着你就不能使用你喜欢的方式管理音乐。Linux 上有很多方式可以让你整理你的曲库。以下六种,仅供参考:
### 通过WINE运行iTunes ###
尽管 iTunes 没有Linux版你还是可以试试 [使用 WINE 运行 iTunes ][1] 或 PlayOnLinux 的。这些软件给本来只能运行于Windows下的应用程序添加一个兼容层这样就能让他们运行在Linux上了但这样的方法效果十有分限。因此[并非所有 indows 应用程序都能使用WINE运行][2] - 但这还是一个值得尝试的方法。
各个版本的iTunes结果可能给你不同的结果但一般都遵循以下方法
1. 安装WINE
2. 在WINE里运行iTunes安装程序
3. 在网上搜索并解决你遇到的问题。
如果你在安装时遇到无法解决的问题比如安装程序错误或者安装好的程序运行不了那是没办法的WINE 就是这样。
如果你想在 WINE 上运行 iTunes 而且运气很好的跑起来了那真是很棒。但如果你还想考虑运行一个原生的Linux应用或者 WINE 不工作的话,还有很多其他选择的。有几个曲库管理软件能让你很方便的管理你的音乐并直接进行播放,还可以制作播放列表。
### [Amarok][3] ###
![](http://cdn.makeuseof.com/wp-content/uploads/2015/03/amarok_main.jpg?35dc20)
如果你使用KDE环境我推荐 Amarok。它具有 [很多管理音乐的特性][4] 而且它还能与KDE桌面环境无缝兼容。它有很多实用的特性如集成了 Last.FM、文件跟踪、动态播放列表及脚本支持。它甚至会自动在你播放曲目时自动下载艺术家封面。
### [Banshee][5] ###
![](http://cdn.makeuseof.com/wp-content/uploads/2015/03/banshee_main.jpg?35dc20)
如果你使用 GNOME 或其他任何基于 GTK 的桌面环境它们十分常见的话我推荐使用使用Bansee作为 [全功能曲库管理工具][6] 。它的功能与Amarok类似也集成了Last.FM支持互联网广播支持podcast等等。选择 Amarok 还是 Bansee 要看你使用的桌面环境(这样才能无缝整合)。
### [Rhythmbox][7] ###
![](http://cdn.makeuseof.com/wp-content/uploads/2015/03/rhythmbox_main.jpg?35dc20)
Rhythmbox是一个更好基于GTK的桌面环境的[轻量级的曲库替代品][8]。尽管如此它也还是有一些自己的特性的。它也支持Last.FM同时还能无缝播放并与其它如 Nautilus、XChat及Pidgin 等进行整合。
### [Clementine][9] ###
![](http://cdn.makeuseof.com/wp-content/uploads/2015/03/clementine_main.jpg?35dc20)
另一款叫 Clementine 的软件也值得我推荐因为它的界面简洁、易用。它支持非常多的第三方服务例如SpotifyDigtal Imported 及Dropbox。Android系统上还有一款用作 Clementine 遥控的app。[Clementine是跨平台的][10] 还支持Mac OS X 及 Windows。
这些程序都能很好的管理并播放你的音乐。唯一的问题是这些程序都不支持与 iOS 设备的整合, 而且目前Linux 上还没有程序能做到这一点。但 iOS 经过很多改进后,已经并不需要再连接到电脑了。
### [Google Play Music][11] ###
![](http://cdn.makeuseof.com/wp-content/uploads/2015/03/google_music.jpg?35dc20)
最后,如果上面的那些程序还不能满足你的需求的话,你可以试试 Google Play Music。这个在线服务也可以用作播放音乐的曲库管理工具但它还有几个额外的好处。你可以上传所有的音乐并且在所有能上网的设备上获取这些音乐。这也意味着你不需要在电脑或者移动设备之间同步你的音乐无论是 Android 还是 iOS 设备因为你可以这些设备中使用Google Play Music。 如果你想要扩展你的曲库,你可以订阅 All Access 服务但这并不是必须的。你不需要支付任何费用也可在你的曲库中储存20,000首
#### 靠,居然没有 Spotify ?! ####
尽管 Spotify 也是一款管理和听音乐的方法,我不推荐它的唯一原因是它事实上并不让你管理你的音乐。你不能将曲目上传到 Spotify - 只能它们给你提供的曲目。尽管它们提供了很多,但口味未必一样。
### 你还有其他选择 ###
以上六个软件应该可以在给你带来类似 iTunes 的功能了。这些软件主要是能让你管理和播放你的曲库,但如果你还需要 iTunes 里的其他特性其他Linux原生软件或许能满足这类需求。
**你通常在Linux上使用哪些音乐**在下方评论与我们分享吧!
--------------------------------------------------------------------------------
via: http://www.makeuseof.com/tag/top-6-ways-get-itunes-experience-linux/
作者:[Danny Stieben][a]
译者:[KevinSJ](https://github.com/KevinSJ)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.makeuseof.com/tag/author/danny/
[1]:http://www.makeuseof.com/tag/how-about-some-wine-with-your-linux/
[2]:http://www.makeuseof.com/answers/does-wine-runs-all-windows-apps/
[3]:https://amarok.kde.org/
[4]:http://www.makeuseof.com/tag/control-music-amarok-linux/
[5]:http://banshee.fm/
[6]:http://www.makeuseof.com/tag/banshee-20-comprehensive-media-player-streamer-podcast-tool-linux/
[7]:https://wiki.gnome.org/Apps/Rhythmbox
[8]:http://www.makeuseof.com/tag/play-manage-music-collection-rhythmbox-linux/
[9]:https://www.clementine-player.org/
[10]:http://www.makeuseof.com/tag/need-a-lightweight-music-player-without-sacrificing-features-clementine-cross-platform/
[11]:http://music.google.com/

View File

@ -0,0 +1,149 @@
Linux中7个用来浏览网页和下载文件的命令
================================================================================
上一篇文章中,我们提到了`rTorrent`、`wget`、`cURL`、`w3m`、`Elinks`等几个有用的工具,很多人回信说还有其它几个类似的工具也值得讨论,所以就有了这篇文章。如果错过了第一部分的讨论,可以通过下面的链接来回顾。
- [5 个基于Linux命令行的文件下载和网站浏览工具][1]
这篇文章介绍了Linux下用于浏览网页和下载文件的其它几个命令行工具。
### 1. links ###
Links是用C语言写的一个开源web浏览器支持包括Linux、Windows、OS X和OS/2在内的所有主流平台。它提供了基于文本和图形界面两种版本。大多数标准的Linux发行版都默认包含了基于文本的版本。如果您的发行版中默认没有安装links可以通过包管理工具进行安装。Elinks是links的一个衍生版本。
# apt-get install links
# yum install links
安装完成后,您可以像下图中那样使用命令浏览任意网页。
# links www.tecmint.com
在links中可以使用键盘上的上下箭头键进行浏览。在超链接上按下右箭头会打开它按下左箭头会返回到上一页面按q键退出。
下图展示了如何使用links访问Tecmint的网站。
![](http://www.tecmint.com/wp-content/uploads/2015/04/links-browse-websites-terminal.gif)
如何你想安装links的图形界面版本可能需要从[http://links.twibright.com/download/][2]下载最新的版本version 2.9)的源代码压缩包。
同样也可以像下面那样使用wget下载安装。
# wget http://links.twibright.com/download/links-2.9.tar.gz
# tar -xvf links-2.9.tar.gz
# cd links-2.9
# ./configure enable-graphics
# make
# make install
**注意**links源代码的编译需要安装libpng, libjpeg, TIFF library, SVGAlib, XFree86, C Compiler 和 make这几个包。
### 2. links2 ###
Links是Twibright实验室编写的web浏览器而Links2是基于它的一个图形化版本。Links2支持鼠标点击设计强调速度不支持任何CSS在一定程度上很好地支持了HTML和JavaScript。
通过下面的命令安装Links2。
# apt-get install links2
# yum install links2
### 3. lynx ###
lynx是一个基于文本的web浏览器使用GNU GPLv2协议发布用ISO C编写。lynx是一个可高度配置的web浏览器是许多系统管理员的救世主有最悠久的web浏览器之称并且至今仍然处在积极开发中。
通过下面的命令安装lynx。
# apt-get install lynx
# yum install lynx
安装完成后,可以像下图中那样使用这个命令浏览网页。
# lynx www.tecmint.com
![](http://www.tecmint.com/wp-content/uploads/2015/04/lynx-commandline-web-browsing.gif)
如果你想对links和lyns了解更多可以访问下面的链接。
- [使用Lynx和Links命令浏览网页][3]
### 4. youtube-dl ###
youtube-dl是一个跨平台的应用可以用来下载youtube和另外几个网站上的视频。它主要使用python开发使用GNU GPL协议发布并且超越了法律约束。youtube不允许用户下载视频因此使用youtube-dl可能会导致违法。使用该工具之前请您仔细阅读相关法律。
使用如下命令安装youtube-dl。
# apt-get install youtube-dl
# yum install youtube-dl
安装完成后可以用如下命令像图中那样从youtube网站下载视频。
# youtube-dl https://www.youtube.com/watch?v=ql4SEy_4xws
![](http://www.tecmint.com/wp-content/uploads/2015/04/download-youtube-videos-from-terminal.gif)
如果你想对youtube-dl了解更多可以访问如下链接。
- [YouTube-DL Linux下的youtube视频下载工具][4]
### 5. fetch ###
fetch是类unix系统下的一个检索URL的命令支持许多选项例如只检索ipv4或ipv6地址无重定向检索请求成功时退出自动重试等。
fetch可以从通过下面的链接下载和安装。
- [http://sourceforge.net/projects/fetch/?source=typ_redirect][5]
编译安装之前需要安装HTTP Fetcher可以通过下面的链接下载。
- [http://sourceforge.net/projects/http-fetcher/?source=typ_redirect][6]
### 6. Axel ###
Axel是Linux下的一个基于命令行的下载加速器可以对请求使用多线程和多个http和ftp连接加速。
使用下面的命令安装Axel。
# apt-get install axel
# yum install axel
Axel安装完成后可以像下图那样使用这个命令下载任意文件。
# axel http://mirror.cse.iitk.ac.in/archlinux/iso/2015.04.01/archlinux-2015.04.01-dual.iso
![](http://www.tecmint.com/wp-content/uploads/2015/04/download-accelarator-for-linux.gif)
### 7. aria2 ###
aria2是一个轻量级的基于命令行的下载工具并且支持多种协议(HTTP, HTTPS, FTP, BitTorrent以及Metalink。它可以使用.metalinks文件从多台服务器同时下载ISO文件。
使用下面的命令安装aria2。
# apt-get install aria2
# yum install aria2
aria2安装完成后可以像下图那样运行这个命令下载任意文件。
# aria2c http://cdimage.debian.org/debian-cd/7.8.0/multi-arch/iso-cd/debian-7.8.0-amd64-i386-netinst.iso
![Aria2: Linux的命令行下载工具 ](http://www.tecmint.com/wp-content/uploads/2015/04/Download-Files-in-Terminal.gif)
*Aria2: Linux命令行下载工具*
目前就这么多了。稍后咱们讨论另一个有意思的话题。请保持联系常来Tecmint逛逛。别忘了在评论中给我们提供您的宝贵反馈您的喜爱和分享帮助我们不断前行。
--------------------------------------------------------------------------------
via: http://www.tecmint.com/command-line-web-browser-download-file-in-linux/
作者:[Avishek Kumar][a]
译者:[fyh](https://github.com/fyh)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.tecmint.com/author/avishek/
[1]:https://linux.cn/article-5546-1.html
[2]:http://links.twibright.com/download/
[3]:http://www.tecmint.com/command-line-web-browsers/
[4]:http://www.tecmint.com/install-youtube-dl-command-line-video-download-tool/
[5]:http://sourceforge.net/projects/fetch/?source=typ_redirect
[6]:http://sourceforge.net/projects/http-fetcher/?source=typ_redirect
[7]:http://www.tecmint.com/install-aria2-a-multi-protocol-command-line-download-manager-in-rhel-centos-fedora/

View File

@ -1,6 +1,7 @@
如何在Bash Shell脚本中显示对话框以及事例
如何在Bash Shell脚本中显示对话框
================================================================================
这个教程给出几个如何使用类似zenity和whiptail的工具在Bash Shell 脚本中提供消息/对话框的例子。使用这些工具你的脚本能够告知用户当前程序运行的状态以及有与其交互的能力。这两个工具的不同之处在于显示消息框或者对话框的方式。Zenity用GTK工具包创建图形用户界面而whiptail在终端内部创建消息框。
这个教程给出几个如何使用类似zenity和whiptail的工具在Bash Shell 脚本中提供消息/对话框的例子。使用这些工具你的脚本能够告知用户当前程序运行的状态并能与用户进行交互。这两个工具的不同之处在于显示消息框或者对话框的方式。Zenity用GTK工具包创建图形用户界面而whiptail则在终端窗口内创建消息框。
### Zenity 工具 ###
@ -8,21 +9,21 @@
sudo apt-get install zenity
由于用zenity创建消息框或者对话框的命令是相当自解释的,我们会给你提供一些例子
用zenity创建消息框或者对话框的命令是不言自明的,我们会给你提供一些例子来参考
### 创建消息框 ###
zenity --info --title "Information Box" --text "This should be information" --width=300 --height=200
zenity --info --title "Information Box" --text "This should be information" --width=300 --height=200
![消息框截图](http://blog.linoxide.com/wp-content/uploads/2015/03/Screenshot-Information-Box.png)
创建 Yes/No 对话框
创建 Yes/No 询问对话框
zenity --question --text "Do you want this?" --ok-label "Yeah" --cancel-label="Nope"
![问题截图](http://blog.linoxide.com/wp-content/uploads/2015/03/Screenshot-Question.png)
创建输入框并在变量中保存值
创建输入框并将输入值保存到变量中
a=$(zenity --entry --title "Entry box" --text "Please enter the value" --width=300 --height=200)
echo $a
@ -75,7 +76,7 @@ zenity --info --title "Information Box" --text "This should be information" --wi
信息框
别忘了查看也许能帮助到你的有用的[zenity 选项][1]
别忘了查看也许能帮助到你的有用的[zenity 选项][1]
### Whiptail 工具 ###
@ -83,7 +84,7 @@ zenity --info --title "Information Box" --text "This should be information" --wi
sudo apt-get install whiptail
用whiptail创建消息框或者对话框的命令也是相当自解释的,我们会给你提供一些基本例子。
用whiptail创建消息框或者对话框的命令也是无需解释的,我们会给你提供一些基本例子作为参考
### 创建消息框 ###
@ -103,7 +104,7 @@ zenity --info --title "Information Box" --text "This should be information" --wi
![whiptail输入框截图](http://blog.linoxide.com/wp-content/uploads/2015/03/Screenshot-whiptail-entry.png)
尝试使用输入值要注意的一点是whiptail用stdout显示对话框用stderr输出值。那样的话,如果你用 var=$(...),你不会看到对话框也不能获得输入的值。解决方法是交换stdout和stderr。在whiptail命令后面添加 **3>&1 1>&2 2>&3** 就可以做到。你想获取输入值的任何whiptail命令也是如此。
尝试使用输入值要注意的一点是whiptail用stdout显示对话框用stderr输出值。这样的话,如果你用 var=$(...),你就根本不会看到对话框也不能获得输入的值。解决方法是交换stdout和stderr。在whiptail命令后面添加 **3>&1 1>&2 2>&3** 就可以做到。你想获取输入值的任何whiptail命令也是如此。
### 创建菜单对话框 ###
@ -157,7 +158,7 @@ zenity --info --title "Information Box" --text "This should be information" --wi
### 结论 ###
选择合适的工具显示对话框取决于你期望在桌面机器还是服务器上运行你的脚本。桌面机器用户通常使用窗口环境,更可能用显示的窗口运行脚本和交互。然而,如果你期望用户是在服务器上工作的,你也许会希望安全地显示,并使用whiptail或者任何其它在纯终端窗口显示对话框的工具。
选择合适的工具显示对话框取决于你期望在桌面机器还是服务器上运行你的脚本。桌面机器用户通常使用GUI窗口环境也可能运行脚本并与显示的窗口进行交互。然而如果你期望用户是在服务器上工作的在没有图形界面时你也许希望能确保总能显示那就使用whiptail或者任何其它在纯终端窗口显示对话框的工具。
--------------------------------------------------------------------------------
@ -165,7 +166,7 @@ via: http://linoxide.com/linux-shell-script/bash-shell-script-show-dialog-box/
作者:[Ilija Lazarevic][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -0,0 +1,176 @@
如何使用图形化工具远程管理 Linux上的MySQL
================================================================================
如果你在一个远程的VPS上运行了MySQL服务器你会如何管理你的远程数据库主机呢基于web的数据库管理工具例如[phpMyAdmin][2]或者[Adminer][3]可能会是你第一个想起的。这些基于web的管理工具需要一个正常运行的后端的web服务和PHP引擎。但是如果你的VPS仅仅用来做数据库服务(例如,数据库与其它服务独立存放的分布式结构)为偶尔的数据库管理提供一整套的LAMP是浪费VPS资源的。更糟的是LAMP所打开的HTTP端口可能会成为你VPS资源的安全漏洞。
作为一种选择你可以使用在一台客户机上运行本地的MySQL客户端当然如果没有别的选择一个纯净的MySQL命令行客户端将是你的默认选择。但是命令行客户端的功能是有限的因为它没有生产级数据库管理功能例如可视化SQL开发、性能调优、模式验证等等。你是否在寻找一个成熟的MySQL管理工具那么一个MySQL的图形化管理工具将会更好的满足你的需求。
###什么是MySQL Workbench?
作为一个由Oracle开发的集成的数据库管理工具[MySQL Workbench][4]不仅仅是一个简单的MySQL客户端。简而言之Workbench是一个跨平台的Linux,MacOX,Windows数据库设计、开发和管理的图形化工具。MySQL Workbench 社区版是遵循GPL协议的。作为一个数据库管理者你可以使用Workbench去配置MySQL服务、管理MySQL用户、进行数据库的备份与还原、监视数据库的健康状况所有的都在对用户友好的图形化环境下处理。
在这个手册里让我们演示下如何在Linux下安装和使用MySQL Workbench。
###在Linux上安装MySQL Workbench
你可以在任何一个桌面linux机器上运行MySQL Workbench来设置你的数据库管理环境。虽然一些Linux发行版例如Debian/Ubuntu在他们的软件源中已经有了MySQL Workbench但是从官方源中安装是一个好的方法因为他们提供了最新的版本。这里介绍了如何设置一个官方的Workbench软件源和从中安装它。
#### 基于 Debian 的桌面 (Debia, Ubuntu, Mint): ####
到其[官方站点][5]选择一个和你环境匹配的DEB文件并下载安装
例如,对于 Ubuntu 14.10
$ wget http://dev.mysql.com/get/mysql-apt-config_0.3.4-2ubuntu14.10_all.deb
$ sudo dpkg -i mysql-apt-config_0.3.4-2ubuntu14.10_all.deb
对于 Debian 7
$ wget http://dev.mysql.com/get/mysql-apt-config_0.3.3-1debian7_all.deb
$ sudo dpkg -i mysql-apt-config_0.3.3-1debian7_all.deb
当你安装DEB文件时你会看到下面的配置菜单并且选择配置那个MySQL产品
![](https://farm8.staticflickr.com/7702/16928715218_b1fcbcdbf3_c.jpg)
选择“Utilities”。完成配置后选择“Apply”去保存配置。然后更新包索引并且安装Workbench。
$ sudo apt-get update
$ sudo apt-get install mysql-workbench
#### 基于 Red Hat 的桌面 (CentOS, Fedora, RHEL): ####
去官网下载并安装适合你Linux环境的RPM源包。
例如,对于 CentOS 7
$ wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
$ sudo yum localinstall mysql-community-release-el7-5.noarch.rpm
对于 Fedora 21
$ wget http://dev.mysql.com/get/mysql-community-release-fc21-6.noarch.rpm
$ sudo yum localinstall mysql-community-release-fc21-6.noarch.rpm
验证"MySQL Tools Community"源是否被安装:
$ yum repolis enabled
![](https://farm9.staticflickr.com/8826/16494069254_15458ace52_c.jpg)
安装Workbench
$ sudo yum install mysql-workbench-community
###设置远程数据库的安全连接
接下来是为你运行MySQL服务的VPS设置一个远程连接。当然你可以直接通过图形化的Workbench连接你的远程MySQL服务器在数据库开放了远程连接后。然而这样做有很大的安全风险因为有些人很容易窃听你的数据库传输信息并且一个公开的MySQL端口默认为3306会是另外一个攻击入口。
一个比较好的方法是关掉远程访问数据库服务功能仅允许在VPS 上的127.0.0.1访问。然后在本地客户机和远程VPS之间设置一个SSH隧道这样的话和MySQL之间的数据能安全地通过它的本地回环接口上中继。相比较设置一个SSL加密的连接来说配置SSH隧道需要很少的操作因为它仅仅需要SSH服务并且在大多数的VPS上已经部署了。
让我们来看看如何来为一个MySQL Workbench设置一个SSH隧道。
在这个设置里不需要你开放远程访问MySQL服务。
在一个运行了Workbench的本地客户机上键入下面的命令替换'user'(远程 VPS 的用户名)和'remote_vps'(远程 VPS 的地址)为你自己的信息:
$ ssh user@remote_vps -L 3306:127.0.0.1:3306 -N
你会被要求输入你VPS的SSH密码当你成功登陆VPS后在本地的3306端口和远程VPS的3306端口之间将会建立一个SSH隧道。这里你不会在前台看到任何信息显示。
或者你可以选择在后台运行SSH隧道按CTRL+Z停止当前的命令然后输入bg并且ENTER
![](https://farm8.staticflickr.com/7714/16928715438_bf0db49b3b_c.jpg)
这样SSH隧道就会在后台运行了。
###使用MySQL Workbench远程管理MySQL服务
在建立好SSH隧道后你可以通过MySQL Workbench去远程连接MySQL服务了。
输入下面命令启动Workbench
$ mysql-workbench
![](https://farm9.staticflickr.com/8768/16494069294_0fce571ddb_c.jpg)
点击Workbench页面上面的“加号”图标去创建一个新的数据库连接接着会出现下面的连接信息。
- **Connection Name**: 任意描述 (例如: My remote VPS database)
- **Hostname**: 127.0.0.1
- **Port**: 3306
- **Username**: MySQL 用户名 (例如 root)
![](https://farm8.staticflickr.com/7727/16928715288_d9ac3bfc7a_c.jpg)
注意因为隧道设置的是127.0.0.1:3306所以主机名字段必须是127.0.0.1而不能是远程VPS的IP地址或者主机名。
当你设置好一个新的数据库连接后你会在Workbench窗口看到一个新的框点击那个框就会实际去连接远程的MySQL服务了。
![](https://farm8.staticflickr.com/7650/17114969532_0252ffcd31_c.jpg)
当你登录到MySQL 服务器后,你可以再左侧面板看到各种管理任务。让我们来看一些常见的管理任务。
#### MySQL Server Status ####
该菜单显示了展示数据库服务器的资源使用情况的实时监控面板。(例如:流量、链接、读写)
![](https://farm8.staticflickr.com/7627/16494069414_9d838d4138_c.jpg)
#### Client Connections ####
客户端连接数是一个极其重要的监控的资源,这个菜单显示了每个连接的详细信息。
![](https://farm9.staticflickr.com/8747/16909119337_a8d89772dd_c.jpg)
#### 用户和权限 ####
这个菜单允许你管理MySQL用户包括他们的资源限制和权限。
![](https://farm9.staticflickr.com/8765/16494069384_760fc17c8f_c.jpg)
#### MySQL Server Administration ####
你可以启动或关闭MySQL服务并且检查它的服务日志。
![](https://farm8.staticflickr.com/7588/17114969592_54526dfb32_c.jpg)
#### Database Schema Management ####
可以可视化的查看、更改、检查数据库结构在“Schemas”标题下选择任何一个数据库或表然后右击
![](https://farm8.staticflickr.com/7665/16496363973_fd03a96198_c.jpg)
![](https://farm9.staticflickr.com/8744/16909119497_7c884617b8_c.jpg)
#### Database Query ####
你可以执行任何的语句(只要你的权限允许),并且检查其结果。
![](https://farm8.staticflickr.com/7716/17114969692_c0f02bb277_c.jpg)
此外性能统计数据和报表仅用于MySQL5.6以上的版本。对于5.5及其以下的版本,性能部分会以灰色显示。
### 结论 ###
简介且直观的选项卡界面丰富的特性开源使MySQL Workbench成为一个非常好的可视化数据库设计和管理工具。为其减分的是它的性能。我注意到在一台运行繁忙的服务器上Workbench有时会变得异常缓慢尽管它的性能差强人意我依然认为MySQL Workbench是MySQL数据库管理员和设计人员必备的工具之一。
你曾在你的生产环境中用过Workbench吗或者你还有别的GUI工具可以推荐请分享你的经验吧。
--------------------------------------------------------------------------------
via: http://xmodulo.com/remote-mysql-databases-gui-tool.html
作者:[Dan Nanni][a]
译者:[tyzy313481929](https://github.com/tyzy313481929)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://xmodulo.com/author/nanni
[1]:http://xmodulo.com/go/digitalocean
[2]:http://ask.xmodulo.com/install-phpmyadmin-centos.html
[3]:http://xmodulo.com/set-web-based-database-management-system-adminer.html
[4]:http://mysqlworkbench.org/
[5]:http://dev.mysql.com/downloads/repo/apt/
[6]:http://dev.mysql.com/downloads/repo/yum/
[7]:http://xmodulo.com/how-to-allow-remote-access-to-mysql.html

View File

@ -1,17 +1,14 @@
Linux 有问必答 -- 如何在红帽系linux中编译Ixgbe
Linux 有问必答: 如何在红帽系linux中编译Ixgbe驱动
================================================================================
> **提问**我想要安装最新版的ixgbe 10G网卡驱动。在CentOS, Fedora 或 RHEL中我应该如何编译ixgbe驱动
想要在linux使用Intel的PCI Express 10G网卡例如8259882599x540需要安装Ixgbe驱动。如今的Linux发行版都会预安装ixgbe的可加载模块但是预安装的ixgbe驱动不是完整功能版。如果想要开启和定制所有10G网卡的功能RSS、多队列、虚拟化功能、硬件 offload 等),需要从源码编译安装。
想要在linux使用Intel的PCI Express 10G网卡例如8259882599x540需要安装Ixgbe驱动。如今的Linux发行版都会欲安装ixgbe作为可加载模块但是预安装的ixgbe驱动不是完整功能版。如果想要开启和定制所有10G网卡RSS的功能需要源码编译安装。
本文基于红帽系平台CentOSRHEL或Fedora。Debian系系统请看[这篇文章][1]
本文基于红帽系平台CentOSRHEL或Fedora。Debian系平台请看[这篇文章][1]
### 第一步: 安装依赖 ###
首先,安装必要的开发环境和安装匹配的内核头
首先,安装必要的开发环境和安装匹配的内核头文件
$ sudo yum install gcc make
$ sudo yum install kernel-devel
@ -22,7 +19,7 @@ Linux 有问必答 -- 如何在红帽系linux中编译Ixgbe
$ wget http://downloads.sourceforge.net/project/e1000/ixgbe%20stable/3.23.2/ixgbe-3.23.2.tar.gz
确保检查支持内核版本。例如Ixgbe3.23.2版本支持Linux内核版本2.6.18以上到3.18.1.
请检查支持的内核版本。例如Ixgbe3.23.2版本支持Linux内核版本2.6.18到3.18.1。
提取压缩包并编译
@ -30,7 +27,7 @@ Linux 有问必答 -- 如何在红帽系linux中编译Ixgbe
$ cd ixgbe-3.23.2/src
$ make
如果成功编译完成的驱动ixgbe.ko可以在当前目录找到
如果成功,可以在当前目录找到编译完成的驱动ixgbe.ko
可以运行这个命令来查看编译信息:
@ -44,7 +41,7 @@ Linux 有问必答 -- 如何在红帽系linux中编译Ixgbe
这步准备加载已经编译好的驱动。
如果系统已经加载了Ixgbe驱动首先需要卸载掉老版本。否者,新版本不能够加载。
如果系统已经加载了Ixgbe驱动首先需要卸载掉老版本。否则,新版本不能加载。
$ sudo rmmod ixgbe.ko
@ -178,7 +175,7 @@ ixgbe.ko将会安装在下列目录
/lib/modules/<kernel-version>/kernel/drivers/net/ixgbe
此时,编译完蛋程序将在启动时自动加载,也可以通过运行命令加载它:
此时,编译好的驱动将在启动时自动加载,也可以通过运行命令加载它:
$ sudo modprobe ixgbe
@ -190,10 +187,10 @@ via: http://ask.xmodulo.com/compile-ixgbe-driver-centos-rhel-fedora.html
作者:[Dan Nanni][a]
译者:[Vic020](http://vicyu.net)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://ask.xmodulo.com/author/nanni
[1]:http://ask.xmodulo.com/download-install-ixgbe-driver-ubuntu-debian.html
[1]:https://linux.cn/article-5149-1.html
[2]:http://sourceforge.net/projects/e1000/files/ixgbe%20stable/

View File

@ -0,0 +1,55 @@
Linux有问必答如何在虚拟机上配置PCI直通
================================================================================
> **提问**我想要分配一块物理网卡到用KVM创建的虚拟机上。我打算为这台虚拟机启用网卡的PCI直通。请问我如何才能在virt-manager里面通过PCI直通增加一个PCI设备到虚拟机上
如今的hypervisor能够高效地在多个虚拟操作系统间共享和模拟硬件资源。然而虚拟资源共享不是总能使人满意甚至在虚拟机性能是重点考量时或者是虚拟机需要硬件DMA的完全控制时应该避免共享。一项名叫“PCI直通”的技术可以用在一个虚拟机需要独享PCI设备时例如网卡、声卡、显卡。本质上PCI直通穿透了虚拟层直接将PCI设备放到虚拟机里而其他虚拟机则不能访问该设备。
### 开启“PCI直通”的准备 ###
如果你想要为一台HVM实例开启PCI直通例如一台KVM创建的全虚拟化的虚拟机你的母系统包括CPU和主板必须满足以下条件。如果你的虚拟机是半虚拟化的由Xen创建你可以跳过这步。
为了在 HVM虚拟机上开启PCI直通系统需要支持**VT-d** (Intel处理器)或者**AMD-Vi** (AMD处理器)。Intel的VT-D“英特尔直接I/O虚拟化技术”是适用于最高端的Nehalem处理器和它的后继者例如Westmere、Sandy Bridge的Ivy Bridge。注意VT-d和VT-x是两个独立功能。intel/AMD处理器支持VT-D/AMD-VI功能的列表可以[查看这里][1]。
在确认你的设备支持VT-d/AMD-Vi后还有两件事情需要做。首先确保VT-d/AMD-Vi已经在BIOS中开启。然后在内核启动过程中开启IOMMU。IOMMU服务是由VT-d/AMD-Vi提供的可以保护虚拟机访问的主机内存同时它也是全虚拟化虚拟机支持PCI直通的前提。
Intel处理器中通过将“**intel_iommu=on**传给内核启动参数来开启IOMMU。参看[这篇教程][2]了解如何通过GRUB修改内核启动参数。
配置完启动参数后,重启电脑。
### 添加PCI设备到虚拟机 ###
我们已经完成了开启PCI直通的准备。事实上只需通过virt-manager就可以给虚拟机分配一个PCI设备。
打开virt-manager的虚拟机设置在左边工具栏点击增加硬件按钮。
选择从PCI设备表一个PCI设备来分配点击“完成”按钮
![](https://farm8.staticflickr.com/7587/17015584385_db49e96372_c.jpg)
最后启动实例。这样主机的PCI设备已经可以由虚拟机直接访问了。
### 常见问题 ###
在虚拟机启动时如果你看见下列任何一个错误这个错误有可能由于母机VT-d (或 IOMMU)未开启导致。
Error starting domain: unsupported configuration: host doesn't support passthrough of host PCI devices
----------
Error starting domain: Unable to read from monitor: Connection reset by peer
请确保"**intel_iommu=on**"启动参数已经按上文叙述开启。
--------------------------------------------------------------------------------
via: http://ask.xmodulo.com/pci-passthrough-virt-manager.html
作者:[Dan Nanni][a]
译者:[Vic020/VicYu](http://vicyu.net)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://ask.xmodulo.com/author/nanni
[1]:http://wiki.xenproject.org/wiki/VTdHowTo
[2]:http://xmodulo.com/add-kernel-boot-parameters-via-grub-linux.html

View File

@ -72,7 +72,7 @@ Linux网络统计工具/命令
查看[ss 命令教程][1] 获取更多信息。
### netstat 命令 : 显示套接字信息的旧的好工具 ###
### netstat 命令 : 不错的显示套接字信息的旧工具 ###
查看所有网络端口以及汇总信息表,输入:
@ -268,6 +268,7 @@ Linux网络统计工具/命令
### sar 命令: 显示网络统计信息 ###
输入以下命令 (你需要 [通过sysstat包安装并启用sar][3]):
sar -n DEV
Linux 2.6.32-220.2.1.el6.x86_64 (www.cyberciti.biz) Tuesday 13 March 2012 _x86_64_ (2 CPU)
@ -345,11 +346,11 @@ via: http://www.cyberciti.biz/faq/network-statistics-tools-rhel-centos-debian-li
作者:[nixCraft][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.cyberciti.biz/tips/about-us
[1]:http://www.cyberciti.biz/tips/linux-investigate-sockets-network-connections.html
[2]:http://www.cyberciti.biz/tips/netstat-command-tutorial-examples.html
[1]:https://linux.cn/article-4372-1.html
[2]:https://linux.cn/article-2434-1.html
[3]:http://www.cyberciti.biz/tips/identifying-linux-bottlenecks-sar-graphs-with-ksar.html

View File

@ -1,8 +1,10 @@
如何在一个Docker容器里安装Discourse
=============================================================================
大家好今天我们将会学习如何利用Docker平台安装Discourse。Discourse是完全开源的讨论平台为互联网的下一个十年而搭建拥有一个邮件列表一个论坛和一个long-form(此处不明白聊天室。不管从技术角度还是社会学角度当你试图去重新想象当今一个现代的可持续的完全开源的互联网讨论平台该是什么样子Discourse都是一个不错的途径。Discourse简洁直接之于讨论。它确实是一个令人称赞的平台,对于互联网上各种各样的论来说,提供了在机器之外如此酷的一个服务。Docker是一个开源平台提供打包运输和运行任何应用的平台如一个轻量级容器。Docker容器技术使得Discourse更加方便和容易去建立应用程序。
大家好今天我们将会学习如何利用Docker平台安装Discourse。Discourse是一个完全开源的讨论平台以未来十年的互联网理念设计拥有一个邮件列表一个论坛和一个长篇聊天室。不管从技术角度还是社会学角度如今要体验一个现代的、勃勃生机的、完全开源的互联网讨论平台Discourse都是一个不错的途径。Discourse是一个简单、简明、简易的讨论方式。它确实是一个令人称赞的平台,对于互联网上各种各样的论来说,提供了一个上手可用的很酷的服务。
所以下面是一些快速且容易的步骤用来安装Discourse在一个Docker环境里面。
Docker是一个开源的、可以将任何应用以轻量级容器的方式打包、传输和运行的开放平台。Docker容器技术使得可以更加方便和容易构建Discourse。
所以下面是一些快速且容易的步骤用来在一个Docker环境里面安装Discourse。
### 1. 安装Docker ###
@ -16,7 +18,7 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
#### 在CentOS 7上 ####
在CentOS 7的主机上我们使用yum管理器安装docker,因为CentOS的仓库里同样有docker安装包
在CentOS 7的主机上我们使用yum管理器安装docker因为CentOS的仓库里同样有docker安装包
# yum install docker
@ -24,7 +26,7 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
### 2. 设定交换内存 ###
如果你的RAM容量小于1GB那么确保升级你的系统达到1GB或者以上否则Discourse不会在512MB的RAM下安装。如果你现在准备好了安装Discourse根据下面的步骤为你的VPSVirtual Private Servers或者服务器设定交换内存
如果你的RAM容量小于1GB那么确保升级你的系统达到1GB或者以上Discourse不能在512MB的RAM下安装。如果你现在准备好了安装Discourse根据下面的步骤为你的VPSVirtual Private Servers或者服务器设定交换内存
运行下面的命令,创建一个空的交换文件。
@ -34,7 +36,7 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
# dd if=/dev/zero of=/swapfile bs=1k count=1024k
如果你想达到2GB跳过上面的所有步骤,跟着下面做
如果你想达到2GB跳过上一步,跟着下面做
# dd if=/dev/zero of=/swapfile bs=1k count=2014k
@ -50,14 +52,14 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
# echo "/swapfile swap swap auto 0 0" | sudo tee -a /etc/fstab
设置swappiness为10这样交换内存仅作为一个紧急缓冲区用。
设置swappiness参数为10这样交换内存仅作为一个紧急缓冲区用。
# sudo sysctl -w vm.swappiness=10
# echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
### 3. 安装Discourse ###
在我们的主机上安装Docker后我们将会安装Discourse。现在我们从官方的Discourse GitHub仓库克隆一份到/var/discourse目录下。我们需要运行下面的命令完成这一步。
在我们的主机上安装Docker后我们将会安装Discourse。现在我们从官方的Discourse GitHub仓库克隆一份到`/var/discourse`目录下。我们需要运行下面的命令完成这一步。
# mkdir /var/discourse/
@ -65,7 +67,7 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
# git clone https://github.com/discourse/discourse_docker.git /var/discourse/
克隆好仓库后,我们会为discourse服务器复制配置文件
克隆好仓库后,我们discourse服务器复制配置文件
# cp samples/standalone.yml containers/app.yml
@ -77,15 +79,15 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
# nano containers/app.yml
现在,我们需要设置开发者的邮箱地址为DISCOURSE_DEVELOPER_EMAILS,如下。
现在,我们需要将开发者邮箱地址DISCOURSE_DEVELOPER_EMAILS修改为自己的,如下。
DISCOURSE_DEVELOPER_EMAILS: 'arun@linoxide.com'
然后,我们设置主机名为服务器的域名。
然后,我们设置主机名为服务器的域名。
DISCOURSE_HOSTNAME: 'discourse.linoxide.com'
接着,为每个托管在相同discourse主机或者vps上的SMTP服务器设定邮箱证书。SMTP设置需要从你的Discourse发送邮件
接着,设置放在相同的discourse主机或vps上的SMTP服务器的认证信息。这些SMTP设置用于你的Discourse发送邮件。
DISCOURSE_SMTP_ADDRESS: smtp.linoxide.com
DISCOURSE_SMTP_PORT: 587 # (optional)
@ -94,11 +96,9 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
![](http://blog.linoxide.com/wp-content/uploads/2015/04/discourse-configuration.png)
Discourse 配置
如果你在使用一个1GB的Discourse设定UNICORN_WORKERS为2db_shared_buffers为128MB这样你会有更多的内存空间。
运行Discourse需要强制性地创建一个邮件服务器。如果你已经有一个服务器了那就好办多了我们可以使用它的证书。如果你没有现成的邮件服务器,或者你不知道那是什么。没关系,创建一个免费的帐号在[Mandrill][1] ([Mailgun][2],或者[Mailjet][3]),然后使用面板上提供的证书
运行Discourse需要强制性地创建一个邮件服务器。如果你已经有一个服务器了那就好办多了我们可以使用它的认证信息。如果你没有现成的邮件服务器,或者你不知道那是什么。没关系,可以在[Mandrill][1] (或[Mailgun][2]和 [Mailjet][3])创建一个免费的帐号,然后使用其提供的认证信息
### 5. 启动Discourse应用 ###
@ -110,35 +110,39 @@ docker安装包在Ubuntu的仓库里面是可用的所以我们将会使用ap
上述命令可能会花去几分钟时间会自动配置我们的Discourse环境。然后该进程完成后我们需要运行下面的命令启动Discourse App
#./launch start app
#./launcher start app
![Starting Discourse](http://blog.linoxide.com/wp-content/uploads/2015/04/starting-discourse.png)
如果一切都正常,我们就能使用惯用的浏览器来访问我们新鲜出炉的 Discourse 的 Web 界面了: http://ip-address/ or http://discourse.linoxide.com/ 。然后,我们就可以创建一个新账号并成为管理员。
![](http://blog.linoxide.com/wp-content/uploads/2015/04/Discourse-web-interface.png)
### 维护 ###
这里往下是/var/discourse/目录里加载命令的使用这使得我们可以承担维护的任务通过Docker 容器控制Disourse。这里不太明白原文表达意思
这里往下是/var/discourse/目录里的 launcher 命令的用法它可以用于我们在Docker 容器里面控制和维护Disourse。
Usage: launcher COMMAND CONFIG [--skip-prereqs]
Commands:
start: Start/initialize a container
stop: Stop a running container
restart: Restart a container
destroy: Stop and remove a container
enter: Use nsenter to enter a container
ssh: Start a bash shell in a running container
logs: Docker logs for container
mailtest: Test the mail settings in a container
bootstrap: Bootstrap a container for the config based on a template
rebuild: Rebuild a container (destroy old, bootstrap, start new)
cleanup: Remove all containers that have stopped for > 24 hours
用法: launcher 命令 配置 [--skip-prereqs]
命令:
start: 启动/初始化一个容器
stop: 停止一个运行的容器
restart: 重启一个容器
destroy:停止并删除一个容器
enter: 使用 nsenter 进入容器
ssh: 在一个运行的容器中启动一个 bash shell
logs: 容器的 Docker l日志
mailtest: 在容器中测试邮件设置
bootstrap: 基于配置模版来引导一个容器
rebuild: 重建一个容器(摧毁旧的,初始化,启动新的)
cleanup: 清理所有停止了24小时以上的容器
Options:
--skip-prereqs Don't check prerequisites
--docker-args Extra arguments to pass when running docker
选项:
--skip-prereqs 不检查前置需求
--docker-args 当运行 docker 时,展开并传入参数
### 总结 ###
Hurray我们已经成功使用Docker技术安装了Discourse。Docker技术使得Discourse十分容易安装在任何平台并且包含所有的要求。我们需要自己的邮件服务器或者邮件服务器的证书来启动它。对于便捷的现代邮件列表论坛来说Discourse是一个伟大的平台。最后这句有些别扭
哈哈我们已经成功使用Docker技术安装了Discourse。Docker技术使得Discourse十分容易安装在任何平台并且包含所有的要求。我们需要自己的邮件服务器或者邮件服务器的证书来启动它。对于便捷的现代邮件列表论坛来说Discourse是一个伟大的平台。最后这句有些别扭
--------------------------------------------------------------------------------
@ -146,7 +150,7 @@ via: http://linoxide.com/how-tos/install-discourse-docker-container/
作者:[Arun Pyasi][a]
译者:[wi-cuckoo](https://github.com/wi-cuckoo)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,11 +1,11 @@
在Linux中用chattr和lsattr命令管理文件和目录属性
================================================================================
为了允许添加数据,防止更改或者删除等,文件和文件夹中设定了一定的控制属性。例如,你可以在关键系统文件或者文件夹中启用属性然后没有用户包括root可以删除或者修改它不允许比如dump命令等备份工具去备份一个特定的文件或者文件夹等等。这些属性只可以在ext2ext3或者ext4文件系统中的文件和文件夹上设定。
为了允许添加数据,防止更改或者删除等,文件和文件夹可以设定了特定的控制属性。例如,你可以在关键的系统文件或者文件夹中启用属性,然后没有任何用户包括root可以删除或者修改它比如不允许使用像dump这样的命令等备份工具去备份一个特定的文件或者文件夹等等。这些属性只可以在ext2ext3或者ext4文件系统中的文件和文件夹上设定。
有两个命令 **lsattr****chattr** 用来管理属性。下面是常用属性的列表。
注:表格代码
<table width="482" cellspacing="0" cellpadding="4" style="height: 651px">
<table width="482" cellspacing="0" cellpadding="4" border="1">
<colgroup>
<col width="112">
<col width="514"> </colgroup>
@ -63,7 +63,7 @@
<p align="justify" class="western">e (extent format)</p>
</td>
<td width="514">
<p align="justify" class="western">它表明,该文件使用扩展到映射磁盘上的块</p>
<p align="justify" class="western">它表明,该文件使用磁盘上的块的映射扩展</p>
</td>
</tr>
<tr valign="top">
@ -71,7 +71,7 @@
<p align="justify" class="western">i (immutable)</p>
</td>
<td width="514">
<p align="justify" class="western">在文件上启用这个属性时,我们不能更改重命名或者删除这个文件</p>
<p align="justify" class="western">在文件上启用这个属性时,我们不能更改重命名或者删除这个文件</p>
</td>
</tr>
<tr valign="top">
@ -96,14 +96,14 @@
chattr属性中可以使用的不同选项
- **-R** 递归地修改文件夹和子文件夹的属性
- **-V** chattr命令的输出伴随版本信息
- **-f** 压缩大部分错误信息
- **-V** chattr命令会输出带有版本信息的冗余信息
- **-f** 忽略大部分错误信息
在chattr中用于设置或者取消属性的 **操作符**
- + 符号用来为文件和文件夹设置属性,
- - 符号用来移除或者取消属性
- = 使它们成为文件有的唯一属性。
- '+' 符号用来为文件和文件夹设置属性,
- '-' 符号用来移除或者取消属性
- '=' 使它们成为文件有的唯一属性。
**chattr** 和 **lsattr** 命令的基本语法
@ -120,7 +120,7 @@ chattr属性中可以使用的不同选项
现在试着删除或者修改文件
[root@linuxtechi ~]# rm -f dummy_data
rm: cannot remove dummy_data: Operation not permitted
rm: cannot remove 'dummy_data': Operation not permitted
[root@linuxtechi ~]# echo "test" >> dummy_data
-bash: dummy_data: Permission denied
@ -193,7 +193,7 @@ via: http://www.linuxtechi.com/file-directory-attributes-in-linux-using-chattr-l
作者:[Pradeep Kumar][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,12 +1,13 @@
20个为桌面用户准备的令人惊叹的Docker容器
20个令人惊叹的桌面Docker容器
================================================================================
大家好今天我们会列出一些很棒的运行在Docker容器中的桌面软件我们可以在自己的桌面系统中运行它们。Docker是一个开源的项目它提供可以将应用程序作为一个轻量级容器来打包、传送和运行的开放平台。它没有语言支持、框架或打包系统的限制可以运行在任何地方从小型的家用电脑到高端的服务器。它可以使部署和扩展web应用程序、数据库和后端服务像搭积木一样容易而不依赖特定技术栈或提供商。它主要是由开发、运维工程师使用的因为它简单、快速和方便可以用来测试和辅助开发他们产品但是我们也可以在桌面环境使用Docker这样一些桌面程序可以开箱即用。
大家好今天我们会列出一些运行在Docker容器中的很棒的桌面软件我们可以在自己的桌面系统中运行它们。Docker 是一个开源项目提供了一个可以打包、装载和运行任何应用的轻量级容器的开放平台。它没有语言支持、框架和打包系统的限制从小型的家用电脑到高端服务器在何时何地都可以运行。它可以使部署和扩展web应用程序、数据库和后端服务像搭积木一样容易而不依赖特定技术栈或提供商。它主要是由开发、运维工程师使用的因为它简单、快速和方便可以用来测试和辅助开发他们产品但是我们也可以在桌面环境使用Docker这样一些桌面程序可以开箱即用。
下边是20个非常棒的桌面软件docker镜像我们可以使用Docker来运行。
### 1. Lynx ###
Lynx是一个一直以来最受欢迎的文本界面网页浏览器它对多数Linux用户来说都很熟悉。它应该是现在还在日常和开发环境中被使用的最古老的网页浏览器了。可以使用如下命令运行Lync。
Lynx是一个一直以来最受欢迎的文本界面网页浏览器很多Linux用户都很熟悉它。它应该是现在还在日常和开发环境中被使用的最古老的网页浏览器了。可以使用如下命令运行Lync。
$ docker run -it \
--name lynx \
@ -39,7 +40,7 @@ Chrome是一个令人惊叹的图形界面网页浏览器由Google开发
### 4. Tor浏览器 ###
Tor浏览器是一个支持匿名访问的网页浏览器。它让我们可以自由地在网络世界遨游或者浏览被特定组织或者网络服务提供商封锁的网站。它会阻止人通过监视我们的网络连接来窃取我们在网络上的一举一动以及我们的确切位置。运行如下命令运行Tor浏览器。
Tor浏览器是一个支持匿名访问的网页浏览器。它让我们可以自由地在网络世界遨游或者浏览被特定组织或者网络服务提供商封锁的网站。它会阻止人通过监视我们的网络连接来窃取我们在网络上的一举一动以及我们的确切位置。运行如下命令运行Tor浏览器。
$ docker run -it \
-v /tmp/.X11-unix:/tmp/.X11-unix \
@ -50,7 +51,7 @@ Tor浏览器是一个支持匿名访问的网页浏览器。它让我们可以
### 5. Firefox浏览器 ###
Firefox浏览器是一个自由并且开源的网页浏览器它由Mozilla基金会开发。它使用Gecko和SpiderMonkey引擎。Firefox浏览器有很多新特性并且它以性能和安全性著称。
Firefox浏览器是一个自由开源的网页浏览器它由Mozilla基金会开发。它使用Gecko和SpiderMonkey引擎。Firefox浏览器有很多新特性并且它以性能和安全性著称。
$ docker run -d \
--name firefox \
@ -71,12 +72,12 @@ Rainbow Stream是一个文本界面的Twitter客户端有实时显示tweetstr
### 7. Gparted ###
Gparted是一个用来给磁盘分区的开源软件。现在可以在Docker容器里享受分区的乐趣。可以使用如下命令运行gparted。
Gparted是一个用来给磁盘分区的开源软件。现在可以在Docker容器里享受分区的乐趣。可以使用如下命令运行gparted。
$ docker run -it \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e DISPLAY=unix$DISPLAY \
--device /dev/sda:/dev/sda \ # mount the device to partition
--device /dev/sda:/dev/sda \ # 将设备挂载为分区
--name gparted \
jess/gparted
@ -91,7 +92,7 @@ GIMPGnu Image Manipulation Program是一个令人惊叹的Linux图片编
### 9. Thunderbird ###
Thunderbird是一个自由并且开源的电子邮件软件它由Mozilla基金会开发和维护。它有众多一个电子邮件软件应该具有的功能。Thunderbird非常易于安装和定制。使用如下命令在Docker中运行Thunderbird。
Thunderbird是一个自由开源的电子邮件软件它由Mozilla基金会开发和维护。它有众多一个电子邮件软件应该具有的功能。Thunderbird非常易于安装和定制。使用如下命令在Docker中运行Thunderbird。
$ docker run -d \
-e DISPLAY \
@ -102,7 +103,7 @@ Thunderbird是一个自由并且开源的电子邮件软件它由Mozilla基
### 10. Mutt ###
Mutt是一个文本界面的电子邮件客户端有很多很酷的功能色支持IMAP、POP3、SMTP支持邮件存储支持等。 使用如下命令运行Mutt。
Mutt是一个文本界面的电子邮件客户端有很多很酷的功能色支持IMAP、POP3、SMTP支持邮件存储支持等。 使用如下命令运行Mutt。
$ docker run -it \
-v /etc/localtime:/etc/localtime \
@ -114,7 +115,7 @@ Mutt是一个文本界面的电子邮件客户端有很多很酷的功能
### 11. Skype ###
Skype是一个支持文字、语音和视频的即时通讯软件它不是开源的但在Linux下可以很棒地运行。我们同样可以在Docker中运行Skype使用如下命令。
Skype是一个支持文字、语音和视频的即时通讯软件它不是开源的但在Linux下可以运行的很好。我们同样可以在Docker中运行Skype使用如下命令。
$ docker run -it \
-v /tmp/.X11-unix:/tmp/.X11-unix:ro \
@ -124,7 +125,7 @@ Skype是一个支持文字、语音和视频的即时通讯软件它不是开
### 12. Cathode ###
Cathode是一个漂亮并且高度可定制的终端模拟器灵感来自经典的计算机。使用如下命令运行Cathode。
Cathode是一个漂亮并且高度可定制的终端模拟器灵感来自古典计算机。使用如下命令运行Cathode。
$ docker run -it \
-v /tmp/.X11-unix:/tmp/.X11-unix \
@ -134,7 +135,8 @@ Cathode是一个漂亮并且高度可定制的终端模拟器灵感来自经
### 13. LibreOffice ###
LibreOffice是一个功能强大的办公套件它是自由和开源的现在由The Document基金会维护。它有干净的界面和强大的功能让我们释放创造力和提升生产力。LibreOffice将数个应用程序集成在一起是市面上最强大的自由并且开源的办公套件。
LibreOffice是一个功能强大的办公套件它是自由开源的现在由The Document基金会维护。它有干净的界面和强大的功能让我们释放创造力和提升生产力。LibreOffice将数个应用程序集成在一起是市面上最强大的自由并且开源的办公套件。
$docker run \
-v $HOME/Documents:/home/libreoffice/Documents:rw \
-v /tmp/.X11-unix:/tmp/.X11-unix \
@ -155,7 +157,7 @@ Spotify可以即时访问数百万的歌曲从经典老歌到最新单曲。
### 15. Audacity ###
Audacity是一个自由并且开源的跨平台软件用来录制和编辑音频。Audacity可以用来做所有类型音频例如podcast的后期处理如归一化、调整、淡入淡出。使用如下命令来运行Audacity。
Audacity是一个自由开源的跨平台软件用来录制和编辑音频。Audacity可以用来做所有类型音频例如podcast的后期处理如归一化、调整、淡入淡出。使用如下命令来运行Audacity。
$ docker run --rm \
-u $(id -u):$(id -g) \
@ -178,7 +180,7 @@ Eclipse是一个集成开发环境。它包含基本的工作区和用来定制
### 17. VLC媒体播放器 ###
VLC是一个自由并且开源的跨平台多媒体播放器可以播放本地文件、DVD、CD、VCD和各种流媒体。VLC由VideoLAN组织开发和维护。使用如下命令运行VLC。
VLC是一个自由开源的跨平台多媒体播放器可以播放本地文件、DVD、CD、VCD和各种流媒体。VLC由VideoLAN组织开发和维护。使用如下命令运行VLC。
$ docker run -v\
$HOME/Documents:/home/vlc/Documents:rw \
@ -196,7 +198,7 @@ Vim是一个高度可配置的文本界面文字编辑器为高效的文本
### 19. Inkscape ###
Inkscape是一个自由并且开源的矢量图形编辑器。它可以创建、编辑矢量图形如插图、图示、线条艺术、图表、徽标以及更复杂的绘画。Inkscape使用的主要矢量图形格式是SVG 1.1版本。它也可以导入和导出一些其他的格式但实际编辑使用的还是SVG格式。
Inkscape是一个自由开源的矢量图形编辑器。它可以创建、编辑矢量图形如插图、图示、线条艺术、图表、徽标以及更复杂的绘画。Inkscape使用的主要矢量图形格式是SVG 1.1版本。它也可以导入和导出一些其他的格式但实际编辑使用的还是SVG格式。
$docker build -t rasch/inkscape --rm .
$ docker run --rm -e DISPLAY \
@ -207,7 +209,7 @@ Inkscape是一个自由并且开源的矢量图形编辑器。它可以创建、
### 20. Filezilla ###
Filezilla是一个自由的FTP解决方案支持FTP、SFTP、FTPS协议。它的客户端是一个功能强大的文件管理工具。它是一个很棒的高度可靠和易用的开源FTP解决方案。
Filezilla是一个免费的FTP解决方案支持FTP、SFTP、FTPS协议。它的客户端是一个功能强大的文件管理工具。它是一个很棒的高度可靠和易用的开源FTP解决方案。
$ xhost +si:localuser:$(whoami)
$ docker run \
@ -229,7 +231,7 @@ via: http://linoxide.com/how-tos/20-docker-containers-desktop-user/
作者:[Arun Pyasi][a]
译者:[goreliu](https://github.com/goreliu)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,12 +1,13 @@
Linux 上IP转发如何帮助专用接口连接到互联网
如何在 Linux 上用 IP转发使内部网络连接到互联网
================================================================================
大家好,今天我们学习一下在 Linux 上用 iptables 实现从一个网络接口到另一个接口的IP转发或者数据包转发。IP转发的概念是使 Linux 机器像路由器一样将数据从一个网络发送到另一个网络。所以,它能作为一个**路由器**或者代理服务器,实现从一个连接到多个客户端机器的共享互联网或者网络连接。
大家好,今天我们学习一下在 Linux 上用 iptables 实现从一个网络接口到另一个接口的IP转发数据包转发。IP转发的概念是使 Linux 机器像路由器一样将数据从一个网络发送到另一个网络。所以,它能作为一个**路由器**或者代理服务器,实现将一个连接的互联网或者网络连接共享给多个客户端机器。
这是一些启用IP转发或网络包转发方法的简单步骤。
### 1. 启用 IPv4 转发 ###
首先,我们打算在我们的 Linux 操作系统上启用 IPv4 转发。要做到这点,我们需要用 sudo 模式在 shell 或终端下执行下面的命令。
首先,我们需要在我们的 Linux 操作系统上启用 IPv4 转发。要做到这点,我们需要用 sudo 模式在 shell 或终端下执行下面的命令。
$ sudo -s
@ -14,7 +15,7 @@ Linux 上IP转发如何帮助专用接口连接到互联网
![临时IP转发](http://blog.linoxide.com/wp-content/uploads/2015/03/ip-forward-temporary.png)
**注意上面的命令能马上启用ip转发但只是临时的直到下一次重启。要永久启用我们需要使用我们喜欢的文本编辑器打开 /etc/sysctl.conf 文件。**
**注意上面的命令能马上启用ip转发但只是临时的直到下一次重启。要永久启用我们需要使用我们惯用的文本编辑器打开 /etc/sysctl.conf 文件。**
# nano /etc/sysctl.conf
@ -38,13 +39,13 @@ Linux 上IP转发如何帮助专用接口连接到互联网
![Ifconfig](http://blog.linoxide.com/wp-content/uploads/2015/03/ifconfig.png)
这里,在我们的机器中, eth2 是连接到互联网或者网络的网卡接口, wlan2 是我们要使用 iptables 从 eth2 转发数据包的接口。要做到这点,我们需要运行以下命令。
这里,在我们的机器中, eth2 是连接到互联网或者网络的网卡接口, wlan2 是我们要使用 iptables 从 eth2 转发数据包的接口。要实现转发,我们需要运行以下命令。
# iptables -A FORWARD -i wlan2 -o eth2 -j ACCEPT
注意:请用你 Linux 机器中的可用设备名称替换 wlan2 和 eth2。
现在,由于网络过滤器是一个无状态的防火墙,我们要用 iptables 允许已建立的连接通过。要做到这点,我们要运行下面的命令。
现在,由于netfilter/iptables是一个无状态的防火墙我们需要让 iptables 允许已建立的连接通过。要做到这点,我们要运行下面的命令。
# iptables -A FORWARD -i eth2 -o wlan2 -m state --state ESTABLISHED,RELATED -j ACCEPT
@ -60,7 +61,7 @@ Linux 上IP转发如何帮助专用接口连接到互联网
### 总结 ###
最后,用安装的 iptables 作为防火墙解决方案,我们在我们的 Linux 机器上成功的配置了从一个接口到另一个接口的数据包转发。这篇文章允许你的专用接口连接到互联网,你不需要桥接接口,而是路由从一个接口进来的数据包到另一个接口,就是这些。如果你有任何问题、建议、反馈,请写到下面的评论框中,然后我们可以改进或更新我们的内容。非常感谢!享受吧 :-)
最后,我们在我们以 iptables 作为防火墙 Linux 机器上成功的配置了从一个接口到另一个接口的数据包转发。这篇文章教给你将你的私有接口连接到互联网,不需要桥接接口,而是将从一个接口进来的数据包路由到另一个接口。就是这些,如果你有任何问题、建议、反馈,请写到下面的评论框中,然后我们可以改进或更新我们的内容。非常感谢!享受吧 :-)
--------------------------------------------------------------------------------
@ -68,7 +69,7 @@ via: http://linoxide.com/firewall/ip-forwarding-connecting-private-interface-int
作者:[Arun Pyasi][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -4,19 +4,17 @@ Ubuntu 自带了一些已经预装的默认应用程序,包括非常流行的
![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/07/web-browser.png)
尽管这两个应用都有它们自己的粉丝,但是没有一个应用能符合每个人的口味和需要。我们经常收到邮件或者推文,询问我们怎样可以在 Ubuntu 上更改默认浏览器或者设置处理邮件链接不同的电子邮件客户端等。
尽管这两个应用都有它们自己的粉丝,但是没有一个应用能符合每个人的口味和需要。我们经常收到邮件或者推文,询问我们可以怎样在 Ubuntu 上更改默认浏览器或者设置处理邮件链接不同的电子邮件客户端等。
我们在这里不仅讨论如何安装不同的软件,还包括如何给一个特定的文件,链接或者内容类型设置系统处理应用。
我们在这里不仅讨论如何安装不同的软件,还包括如何给一个特定的文件,链接或者内容类型设置系统处理应用。
在 Ubuntu 中更改默认应用程序,包括浏览器、电子邮件客户端、文本编辑器、音乐和视频播放器都非常的简单。但并不是每个人都知道更改这些的设置面板在哪里,让我们来快速看一下吧。
### 如何在 Ubuntu 上更改默认浏览器 ###
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/change-default-browser-in-ubuntu-750x402.jpg)
Mozilla 火狐浏览器是一扇稳定、开源而且可靠的互联网之窗,但它并不是每个人的选择。这都没关系。
Mozilla 火狐浏览器是万维网上稳定、开源而且可依赖的窗口,但它并不是每个人的选择。这都没关系。
在 Ubuntu 上使用不同的默认浏览器,首先,显而易见,你需要安装一个新的浏览器。你该怎么做取决于你想要的浏览器:
要在 Ubuntu 上使用不同的默认浏览器,首先,显而易见,你需要安装一个新的浏览器。你该怎么做取决于你想要的浏览器:
- 开源浏览器,例如 [Epiphany][1], [Chromium][2] 和 [IceWeasel][3],可以从 Ubuntu 软件中心安装。
@ -24,9 +22,9 @@ Mozilla 火狐浏览器是万维网上稳定、开源而且可依赖的窗口,
不管你选择哪个浏览器,不管你选择怎样安装,完成之后你就可以继续了。
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/system-settings-ubuntu-300x215.jpg)
要更改在点击其它应用如即时通讯软件、Twitter 客户端、 e-mail 中)中的链接时打开的默认网页浏览器,你需要用到 Ubuntu 系统设置工具。
点击其它应用上的链接例如及时通讯软件、Twitter 客户端、 e-mail要更改打开网页的默认浏览器你需要用到 Ubuntu 系统设置工具。
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/system-settings-ubuntu-300x215.jpg)
你可以用多种方法打开系统设置。其中一种最快的方式是点击右上角(RTL系统是左上角)的 Cog 图标并选择‘系统设置’菜单快捷方式。
@ -35,25 +33,27 @@ Mozilla 火狐浏览器是万维网上稳定、开源而且可依赖的窗口,
1. 在侧边栏选择‘默认应用程序’
1. 把 Web 条目的 ‘火狐’ 改为你想要的选项
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/change-default-browser-in-ubuntu-750x402.jpg)
就是这样。
### 如何在 Ubuntu 上更改默认的邮件客户端 ###
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/CHANGE-DEFAULT-APPS-UBUNTU.jpg)
Ubuntu 用 Thunderbird 作为默认的邮件应用程序。这意味着 当你点击大部分浏览器、 PDF文件、及时通讯软件等上的 **电子邮件地址或者一个 [mailto 链接][7] 的时候会自动打开** 这个应用。
Ubuntu 用 Thunderbird 作为默认的邮件应用程序。这意味着当你点击大部分浏览器、 PDF文件、及时通讯软件等上的 **电子邮件地址或者一个 [mailto 链接][7] 的时候会自动打开** 这个应用。
当然,如果你使用 Thunderbird这真的很方便。但是我们很多人并非如此 我们可能**[使用像 Geary 这样的轻量级客户端][8]**GNOME stalwart Evolution或者依靠像 Gmail 或者 Outlook 这样的网络邮件服务。
在 Ubuntu 上从 Thunderbird **更改默认邮件客户端** 到另一个应用程序,打开系统设置 > 详细 > 默认应用程序。点击下拉菜单到 Mail 并选择从列表中选择你喜欢的客户端。
**在 Ubuntu 上设置 Gmail 为默认的邮件客户端**,你首先需要点击下面的按钮安装 gnome-gmail 软件包。安装完后打开系统设置 > 详细 > 默认应用程序。点击下拉菜单到 Mail 并选择从列表中选择 Gmail
**在 Ubuntu 上设置 Gmail 为默认的邮件客户端**,你首先需要点击下面的按钮安装 gnome-gmail 软件包。安装完后打开系统设置 > 详细 > 默认应用程序。然后点击Mail 的下拉菜单,并选择从列表中选择 Gmail
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/CHANGE-DEFAULT-APPS-UBUNTU.jpg)
- [在 Ubuntu 上安装 GNOME Gmail][9]
### 更多 ###
上述同样的步骤可以用来设置你双击音乐文件时打开你喜欢的音乐播放器,用比如 VLC 应用程序处理 .avi 和 .mp4 文件,等等。
上述同样的步骤可以用来设置你双击音乐文件时打开你喜欢的音乐播放器,用比如 VLC 应用程序处理 .avi 和 .mp4 文件,等等。
--------------------------------------------------------------------------------
@ -61,7 +61,7 @@ via: http://www.omgubuntu.co.uk/2015/04/change-your-default-web-browser-in-ubunt
作者:[Joey-Elijah Sneddon][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
@ -73,5 +73,5 @@ via: http://www.omgubuntu.co.uk/2015/04/change-your-default-web-browser-in-ubunt
[5]:http://www.opera.com/computer/linux
[6]:https://vivaldi.com/#Download
[7]:http://en.wikipedia.org/wiki/Mailto
[8]:http://www.omgubuntu.co.uk/2015/03/install-geary-ubuntu-linux-email-update
[8]:https://linux.cn/article-5511-1.html
[9]:apt://gnome-gmail

View File

@ -1,74 +1,87 @@
安装完Ubuntu 15.04桌面后要做的15件事
================================================================================
本教程适用于新手和在自己的电脑上安装好Ubuntu 15.04 “Vivid Vervet” 桌面之后为了自定义自己的系统并安装一些基本程序作为日常使用的已经做了一些准备的人
本教程适用于在自己的电脑上安装了 Ubuntu 15.04 “Vivid Vervet” 桌面的新手,这里会告诉你安装之后应该做哪些事情,来自定义你的系统和安装一些基本程序作为日常使用
![Things to Do After Installing Ubuntu 15.04](http://www.tecmint.com/wp-content/uploads/2015/04/things-to-do-after-installing-ubuntu-15.04.jpeg)
安装完Ubuntu 15.04桌面后要做的15件事
*安装完Ubuntu 15.04桌面后要做的15件事*
### 1. 启用Ubuntu额外软件库并更新系统 ###
在刚装好Ubuntu之后你应该要关心的第一件事是启用官方合作伙伴提供的Ubuntu额外软件库并且通过最近一次的安全补丁和软件更新来保持系统是最新状态。
在刚装好Ubuntu之后你应该要关心的第一件事是启用Canonical的官方合作伙伴提供的Ubuntu额外软件库并且通过最近一次的安全补丁和软件更新来保持系统是最新状态。
要完成这一步依次从左边菜单中打开System Settings -> Software and Updates工具并检查所有Ubuntu软件和其他软件库官方合作伙伴所提供),点击关闭按钮并等待重新加载缓存源树。
要完成这一步依次从左边菜单中打开System Settings -> Software and Updates工具并检查所有Ubuntu软件和其他软件库Canonical 的合作伙伴所提供),点击关闭按钮并等待重新加载缓存源树。
![Software Updates](http://www.tecmint.com/wp-content/uploads/2015/04/Software-Updates.jpg)
Software Updates
*软件更新*
![Other Software (Canonical Partners)](http://www.tecmint.com/wp-content/uploads/2015/04/Other-Software.jpg)
Other Software (Canonical Partners)
经过一系列快速平滑的更新过程之后,打开终端并输入以下命令来让系统使用新软件库:
*其它软件Canonical 合作伙伴)*
为了快速而顺畅的更新,打开终端并输入以下命令来让系统使用新软件库:
$ sudo apt-get update
$ sudo apt-get upgrade
![Ubuntu Upgrade](http://www.tecmint.com/wp-content/uploads/2015/04/Ubuntu-Upgrade.jpg)
Ubuntu Upgrade
*Ubuntu 升级*
### 2. 安装额外驱动 ###
为了能让系统扫描并安装额外的硬件专有驱动我们依然从System Settings打开Software and Updates工具选择Additional Drivers标签并等待该工具扫描驱动。
如果有驱动匹配到了你的硬件查看你想要安装的驱动并点击Apply按钮来安装它,以防专有驱动没有如期工作用Revert按钮就能卸载它们或勾选Do not use the device后点击Apply按钮。
如果有驱动匹配到了你的硬件查看你想要安装的驱动并点击Apply按钮来安装它。如果专有驱动没有如预期的工作用Revert按钮就能卸载它们或勾选Do not use the device后点击Apply按钮。
![Install Drivers in Ubuntu](http://www.tecmint.com/wp-content/uploads/2015/04/install-drivers.jpg)
Install Drivers
*安装驱动*
### 3. 安装Synaptic和Gdebi工具 ###
除了Ubuntu Software CenterSynaptic是一个apt图形化工具通过它你能管理、安装、卸载、搜索和升级软件库并配置软件包。同样的Gdebi在功能上也有相同的地方。在终端上输入以下命令来安装这两个包:
除了Ubuntu Software Center之外Synaptic是一个apt图形化工具通过它你能管理、安装、卸载、搜索和升级软件库并配置软件包。同样的Gdebi对本地的.deb 包也有类似功能。在终端上输入以下命令来安装这两个包:
$ sudo apt-get install synaptic gdebi
![Install Synaptic and Gdebi](http://www.tecmint.com/wp-content/uploads/2015/04/install-synaptic-gdebi.jpg)
Install Synaptic and Gdebi
*安装 Synaptic 和 Gdebi*
![Synaptic Package Manager](http://www.tecmint.com/wp-content/uploads/2015/04/synaptic-package-manager.jpg)
Synaptic Package Manager
### 4. 更改系统外观和运行状态 ###
*Synaptic 包管理器*
如果你想要更改桌面背景或图标大小依次打开System Settings > Appearance > Look并对桌面进行个性化设置把菜单移动到窗口标题栏在Behavior标签中启动workspaces和desktop icons或开关auto-hide the Launcher。
### 4. 更改系统外观和行为 ###
如果你想要更改桌面背景或图标大小依次打开System Settings > Appearance > Look并对桌面进行个性化设置。要把菜单移动到窗口标题栏在Behavior标签中设置即可。
![System Appearances](http://www.tecmint.com/wp-content/uploads/2015/04/system-appearance.jpg)
System Appearances
*系统外观*
### 5. 提升系统安全性和隐私性 ###
![System Security Enhancement](http://www.tecmint.com/wp-content/uploads/2015/04/system-security-1.jpg)
System Security Enhancement
*增强系统安全*
![System Security Options](http://www.tecmint.com/wp-content/uploads/2015/04/system-security-2.jpg)
System Security Options
*系统安全选项*
### 6. 禁用不需要开机自启动的应用程序 ###
要提高登录系统的速度,通过输入以下命令来显示被隐藏的开机启动应用程序在Dash中搜索它就能打开Startup Applications工具并反选不需要再登录系统的过程中启动的程序
要提高登录系统的速度,通过输入以下命令来显示被隐藏的开机启动应用程序。
$ sudo sed -i s/NoDisplay=true/NoDisplay=false/g /etc/xdg/autostart/*.desktop
$ sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop
在Dash中搜索打开Startup Applications工具并反选不需要在登录系统的过程中启动的程序。
![Disable Unwanted Applications](http://www.tecmint.com/wp-content/uploads/2015/04/disable-unwanted-applications.jpg)
Disable Unwanted Applications
*禁用不需要的应用程序*
### 7. 添加扩展多媒体支持 ###
@ -88,50 +101,54 @@ Disable Unwanted Applications
$ sudo apt-get install vlc smplayer audacious qmmp mixxx xbmc handbrake openshot
![Install Media Players](http://www.tecmint.com/wp-content/uploads/2015/04/install-media-players.jpg)
Install Media Players
*安装媒体播放器*
![Media Player Playlist](http://www.tecmint.com/wp-content/uploads/2015/04/media-playllist.jpg)
Media Player Playlist
除了多媒体播放器安装ubuntu-restricted-extras和Java支持包也可以解码并支持其它受约束的多媒体格式。
*媒体播放器的播放列表*
除了多媒体播放器安装ubuntu-restricted-extras和Java支持包也可以解码并支持其它受限制的多媒体格式。
$ sudo apt-get install ubuntu-restricted-extras openjdk-8-jdk
![Install Ubuntu Extras](http://www.tecmint.com/wp-content/uploads/2015/04/install-ubuntu-extras.jpg)
Install Ubuntu Extras
在终端上输入以下命令来启用DVD Playback和其它多媒体解码器
*安装 Ubuntu Extras*
在终端上输入以下命令来启用DVD 回放和其它多媒体解码器:
$ sudo apt-get install ffmpeg gstreamer0.10-plugins-bad lame libavcodec-extra
$ sudo /usr/share/doc/libdvdread4/install-css.sh
![Enable Video Codes](http://www.tecmint.com/wp-content/uploads/2015/04/enable-video-playbacks.jpg)
Enable Video Codes
### 8. 安装图像处理应用程序 ###
*启用视频解码器*
### 8. 安装图像处理应用程序和安装媒体烧录软件 ###
如果你是一个摄影爱好者想在Ubuntu上处理调整图像或许需要安装一下图像处理程序
- GIMP (alternative for Adobe Photoshop)
- GIMP (一个 Adobe Photoshop 替代品)
- Darktable
- Rawtherapee
- Pinta
- Shotwell
- Inkscape (alternative for Adobe Illustrator)
- Inkscape (一个 Adobe Illustrator 替代品)
- Digikam
- Cheese
这些应用程序能从Ubuntu Software Center中安装或者立刻在终端上使用以下命令
这些应用程序能从Ubuntu Software Center中安装或者立刻在终端上使用以下命令:
$ sudo apt-get install gimp gimp-plugin-registry gimp-data-extras darktable rawtherapee pinta shotwell inkscape
![Install Image Applications](http://www.tecmint.com/wp-content/uploads/2015/04/install-image-applications.jpg)
Install Image Applications
*安装图像处理应用程序*
![Rawtherapee Tool](http://www.tecmint.com/wp-content/uploads/2015/04/rawtherapee.jpg)
Rawtherapee Tool
### 9. 安装媒体烧录软件 ###
*Rawtherapee Tool*
如果要挂载ISO镜像或烧录一张CD或DVD你可以选择并安装以下软件中的一款
@ -146,18 +163,20 @@ Rawtherapee Tool
$ sudo apt-get install furiusisomount
![Install Media Burners](http://www.tecmint.com/wp-content/uploads/2015/04/install-media-burners.jpg)
Install Media Burners
### 10. 安装压缩应用程序 ###
*安装媒体烧录软件*
### 9. 安装压缩应用程序 ###
如果要处理大多数归档格式的文件(zip, tar.gz, zip, 7zip rar等等),输入以下命令来安装这些包:
$ sudo apt-get install unace unrar zip unzip p7zip-full p7zip-rar sharutils rar uudeview mpack arj cabextract file-roller
![Install Archive Applications](http://www.tecmint.com/wp-content/uploads/2015/04/install-archive-apps.jpg)
Install Archive Applications
### 11. 安装聊天应用程序 ###
*安装压缩应用程序*
### 10. 安装聊天应用程序 ###
如果你想要和世界各地的人们聊天这里有一份最流行的Linux聊天应用程序列表
@ -179,14 +198,16 @@ Install Archive Applications
$ sudo apt-get install telegram
![Install Chat Applications](http://www.tecmint.com/wp-content/uploads/2015/04/install-chat-apps.jpg)
Install Chat Applications
想要在Ubuntu上安装Viber可以访问[Viber官方网站][1]下载Debian安装包到本地并用Gdebi包管理工具来安装viber.deb应用程序(右击 > 打开 -> GDebi Package Installer).
*安装聊天应用程序*
想要在Ubuntu上安装Viber可以访问[Viber官方网站][1]下载Debian安装包到本地并用Gdebi包管理工具来安装viber.deb应用程序(右击 > 打开 -> GDebi Package Installer).
![Install Viber in Ubuntu](http://www.tecmint.com/wp-content/uploads/2015/04/install-viber.jpg)
Install Viber
### 12. 安装种子软件 ###
*安装 Viber*
### 11. 安装种子软件 ###
在Ubuntu最流行的种子应用程序和P2P文件共享程序是
@ -203,77 +224,90 @@ Install Viber
$ sudo apt-get install linuxdcpp
![Install Torrent](http://www.tecmint.com/wp-content/uploads/2015/04/install-torrent.jpg)
Install Torrent
### 13. 安装Windows仿真器-Wine和游戏支持平台-Steam ###
*安装种子软件*
Wine仿真器允许你在Linux上安装并运行Window应用程序。在另一方面Steam是一款Valve开发的流行于Linux系统的游戏平台。想要在你的机器上安装它们可以输入以下命令或使用Ubuntu Software Center。
### 12. 安装Windows仿真器-Wine和游戏支持平台-Steam ###
Wine仿真器允许你在Linux上安装并运行Window应用程序。在另一方面Steam是一款Valve开发的基于Linux系统的流行游戏平台。想要在你的机器上安装它们可以输入以下命令或使用Ubuntu Software Center。
$ sudo apt-get install steam wine winetricks
![Install Wine](http://www.tecmint.com/wp-content/uploads/2015/04/install-wine.jpg)
Install Wine
### 14. 安装Cairo-Dock并启用桌面视觉效果 ###
*安装 Wine*
### 13. 安装Cairo-Dock并启用桌面视觉效果 ###
Cairo-Dock是一款漂亮且灵巧的用于Linux桌面上的启动条类似于Mac OS X dock。想要在Ubuntu上安装它可以在终端上运行以下命令
$ sudo apt-get install cairo-dock cairo-dock-plug-ins
![Install Cairo Dock](http://www.tecmint.com/wp-content/uploads/2015/04/install-cairo-dock.jpg)
Install Cairo Dock
*安装Cairo-Dock*
![Add Cairo Dock at Startup](http://www.tecmint.com/wp-content/uploads/2015/04/add-cairo-dock-startup.jpg)
Add Cairo Dock at Startup
*让 Cairo Dock 自动启动*
想要启用某一套桌面效果例如Cube效果可以使用以下命令来安装Compiz包
$ sudo apt-get install compiz compizconfig-settings-manager compiz-plugins-extra
想要激活桌面Cube效果在Dash上查找ccsm打开CompizConfig Settings Manager找到General Options > Desktop Size并设置Horizontal Virtual Size的值为4Vertical Virtual Size的值为1。然后返回检查Desktop Cube框(禁用Desktop Wall)和Rotate Cube框(解决冲突 -> 禁止切换视图1)并Ctrl+Alt+鼠标左击来查看cube效果。
想要激活桌面Cube效果在Dash上查找ccsm打开CompizConfig Settings Manager找到General Options > Desktop Size并设置Horizontal Virtual Size的值为4Vertical Virtual Size的值为1。然后返回检查Desktop Cube框(禁用Desktop Wall)和Rotate Cube框(解决冲突 -> 禁止切换视图1)并Ctrl+Alt+鼠标左击来查看cube效果。
![Enable Compiz](http://www.tecmint.com/wp-content/uploads/2015/04/enable-compiz.jpg)
Enable Compiz
*启用Compiz*
![Compiz Settings](http://www.tecmint.com/wp-content/uploads/2015/04/compiz-settings.jpg)
Compiz Settings
*Compiz设置*
![Compiz Settings Addons](http://www.tecmint.com/wp-content/uploads/2015/04/compiz-settings-1.jpg)
Compiz Settings Addons
*Compiz设置插件*
![Desktop Window Rotating](http://www.tecmint.com/wp-content/uploads/2015/04/desktop-cube.jpg)
Desktop Window Rotating
### 15. 添加额外浏览器支持 ###
*桌面窗口旋转*
### 14. 添加其它浏览器 ###
Ubuntu 15.04默认浏览器是Mozilla Firefox。想要安装其它浏览器比如Google Chrome或Opera可以访问它们的官方网站下载所提供的.deb包并用Gdebi Package Installer在你的系统上安装它们。
![Enable Browser Support](http://www.tecmint.com/wp-content/uploads/2015/04/enable-browser-support.jpg)
Enable Browser Support
*启用浏览器支持*
![Opera Browser Support](http://www.tecmint.com/wp-content/uploads/2015/04/opera.jpg)
Opera Browser Support
*Opera Browser*
想要安装Chromium开源浏览器请在终端上输入以下命令
$ sudo apt-get install chromium-browser
### 16. 安装Tweak工具 ###
### 15. 安装Tweak工具 ###
想要用额外的应用程序来自定义Ubuntu吗在终端上输入以下命令来安装Unity Tweak工具和Gnome Tweak工具
$ sudo apt-get install unity-tweak-tool gnome-tweak-tool
![Install Tweak Tool](http://www.tecmint.com/wp-content/uploads/2015/04/install-tweak-tool.jpg)
Install Tweak Tool
*安装Tweak Tool*
![Tweak Tool Settings](http://www.tecmint.com/wp-content/uploads/2015/04/tweak-settings.jpg)
Tweak Tool Settings
另一个有趣的tweak工具主要是Ubuntu Tweak包可以通过访问官方网站来获取并安装 [http://ubuntu-tweak.com/][2].
*Tweak Tool 设置*
另一个有趣的tweak工具主要是Ubuntu Tweak包可以通过访问官方网站来获取并安装 [http://ubuntu-tweak.com/][2]。
![Tweak Tool: System Information](http://www.tecmint.com/wp-content/uploads/2015/04/tweak-system-info.jpg)
Tweak Tool: System Information
*Tweak Tool: 系统信息*
在你安装好这一连串软件之后,你或许想要清理一下你的系统来释放一点硬盘上的空间,输入以下命令即可:
@ -281,7 +315,7 @@ Tweak Tool: System Information
$ sudo apt-get -y autoclean
$ sudo apt-get -y clean
这只是tweaks工具中的其中一些和普通用户日常生活中可能会在Ubuntu 15.04桌面上安装使用的程序。想要了解更多高级的程序特性和功能请使用Ubuntu Software Center或查阅Ubuntu Wiki主页。
这只是一些普通用户日常使用Ubuntu 15.04桌面是需要调整和安装的程序。想要了解更多高级的程序特性和功能请使用Ubuntu Software Center或查阅Ubuntu Wiki主页。
--------------------------------------------------------------------------------
@ -289,7 +323,7 @@ via: http://www.tecmint.com/things-to-do-after-installing-ubuntu-15-04-desktop/
作者:[Matei Cezar][a]
译者:[ZTinoZ](https://github.com/ZTinoZ)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,30 +1,31 @@
如何在 CentOS 中设置 NTP 服务器
================================================================================
网络时间协议(NTP)用来同步网络上不同主机的系统时间。所有托管的主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。另一方面一个 NTP 服务器将它的时间和任何公共 NTP 服务器或者你选定的服务器同步。NTP 托管的所有系统时钟都同步精确到毫秒级。
在一个协作环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。在介绍详细内容之前,让我们先来简单了解一下 NTP 的概念。
网络时间协议(NTP)用来同步网络上不同主机的系统时间。你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步。由 NTP 管理的所有系统时钟都会同步精确到毫秒级。
在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。在介绍详细内容之前,让我们先来简单了解一下 NTP 的概念。
### 为什么我们需要 NTP? ###
由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。有一些时钟走的比较快而有一些走的比较慢。因此经过很长一段时间以后,一个时钟的时间慢慢的偏移于其它,导致有名的 “时钟漂移” 或 “时间漂移”。为了最小化时钟漂移的影响,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。
由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。有一些时钟走的比较快而有一些走的比较慢。因此经过很长一段时间以后,一个时钟的时间慢慢的和其它的发生偏移,这就是常说的 “时钟漂移” 或 “时间漂移”。为了将时钟漂移的影响最小化,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。
在不同的主机之间进行时间同步对于计划备份、[干扰检测][1]日志、[分布式任务调度][2]或者事务订单管理来说是很重要的事情。它甚至可能要求作为日常任务的一部分。
在不同的主机之间进行时间同步对于计划备份、[入侵检测][1]记录、[分布式任务调度][2]或者事务订单管理来说是很重要的事情。它甚至应该作为日常任务的一部分。
### NTP 层次 ###
### NTP 层次结构 ###
NTP 时钟以层次模型组织。层级中的每层被称为一个 *stratum*。stratum 的概念说明了一台机器到授权的时间源有多少 NTP 跳。
NTP 时钟以层次模型组织。层级中的每层被称为一个 *stratum(阶层)*。stratum 的概念说明了一台机器到授权的时间源有多少 NTP 跳。
![](https://farm8.staticflickr.com/7590/16645732413_3b7af58186_c.jpg)
Stratum 0 由没有时间漂移的时钟组成例如原子时钟。这种时钟不能在网络上直接使用。Stratum N (N > 1) 层服务器从 Stratum N-1 层服务器同步时间。Stratum N 时钟能通过网络和彼此互联。
Stratum 0 由没有时间漂移的时钟组成例如原子时钟。这种时钟不能在网络上直接使用。Stratum N (N > 1) 层服务器从 Stratum N-1 层服务器同步时间。Stratum N 时钟能通过网络和彼此互联。
NTP 支持多达 15 stratums 的层级。Stratum 16 被认为是没有同步不能使用的。
NTP 支持多达 15 个 stratum 的层级。Stratum 16 被认为是未同步的,不能使用的。
### 准备 CentOS 服务器 ###
现在让我们来开始在 CentOS 上设置 NTP 服务器。
首先,我们需要保证正确设置了服务器的时区。在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide")
首先,我们需要保证正确设置了服务器的时区。在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide"LCTT 译注:中国可设置为 Asia/Shanghai )
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
@ -56,7 +57,7 @@ NTP 支持多达 15 stratums 的层级。Stratum 16 被认为是没有同步不
# chown ntp:ntp /var/log/ntpd.log
# chcon -t ntpd_log_t /var/log/ntpd.log
现在初始化 NTP 服务并确保把它添加到了机启动。
现在初始化 NTP 服务并确保把它添加到了机启动。
# systemctl restart ntp
# systemctl enable ntp
@ -69,19 +70,18 @@ NTP 支持多达 15 stratums 的层级。Stratum 16 被认为是没有同步不
下面的表格解释了输出列。
注:表格
<table id="content">
<tbody><tr>
<td>remote</td>
<td>源在 ntp.conf 中定义。‘* 表示当前使用的最好的源;‘+ 表示可作为 NTP 源的源;‘- 标记的源是不可用的。</td>
<td>源在 ntp.conf 中定义。‘* 表示当前使用的,也是最好的源;‘+ 表示这些源可作为 NTP 源;‘- 标记的源是不可用的。</td>
</tr>
<tr>
<td>refid</td>
<td>和远程服务器时钟同步的时钟的 IP 地址。</td>
<td>用于和本地时钟同步的远程服务器的 IP 地址。</td>
</tr>
<tr>
<td>st</td>
<td>Stratum</td>
<td>Stratum(阶层)</td>
</tr>
<tr>
<td>t</td>
@ -89,15 +89,15 @@ NTP 支持多达 15 stratums 的层级。Stratum 16 被认为是没有同步不
</tr>
<tr>
<td>when</td>
<td>自从上次和服务器交互经过的时间(以秒数计)。</td>
<td>自从上次和服务器交互经过的时间(以秒数计)。</td>
</tr>
<tr>
<td>poll</td>
<td>和服务器的轮询频率,以秒数计。</td>
<td>和服务器的轮询间隔,以秒数计。</td>
</tr>
<tr>
<td>reach</td>
<td>表示和服务器交互是否有任何错误的十进制数。值 337 表示 100% 成功</td>
<td>表示和服务器交互是否有任何错误的八进制数。值 337 表示 100% 成功即十进制的255</td>
</tr>
<tr>
<td>delay</td>
@ -109,7 +109,7 @@ NTP 支持多达 15 stratums 的层级。Stratum 16 被认为是没有同步不
</tr>
<tr>
<td>jitter</td>
<td>个例子之间平局时间差异,以毫秒数计。</td>
<td>次取样之间平均时差,以毫秒数计。</td>
</tr>
</tbody></table>
@ -120,13 +120,13 @@ NTP 支持多达 15 stratums 的层级。Stratum 16 被认为是没有同步不
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT
# iptables -A INPUT -p udp --dport 123 -j DROP
该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被截停。你可以根据需要更改规则。
该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被丢弃。你可以根据需要更改规则。
### 配置 NTP 客户端 ###
#### 1. Linux ####
NTP 客户端主机需要 ntpupdate 软件包和服务器同步时间。可以轻松地使用 yum 或 apt-get 安装这个软件包。安装完软件包之后,用服务器的 IP 地址运行下面的命令。
NTP 客户端主机需要 ntpupdate 软件包和服务器同步时间。可以轻松地使用 yum 或 apt-get 安装这个软件包。安装完软件包之后,用服务器的 IP 地址运行下面的命令。
# ntpdate <server-IP-address>
@ -138,17 +138,17 @@ NTP 客户端主机需要 ntpupdate 软件包和服务器同步时间。可以
#### 3. Cisco 设备 ####
如果你想和 Cisco 设备同步时间,你可以在全局配置模式下使用下面的命令。
如果你想要同步 Cisco 设备的时间,你可以在全局配置模式下使用下面的命令。
# ntp server <server-IP-address>
其它有支持 NTP 的卖家有自己的参数用于网络时间。如果你想将设备和 NTP服务器同步时间请查看设备的说明文档。
来自其它厂家的支持 NTP 的设备有自己的用于网络时间的参数。如果你想将设备和 NTP服务器同步时间请查看设备的说明文档。
### 结论 ###
总而言之NTP 是在你的所有主机上同步时钟的一个协议。我们已经介绍了如何设置 NTP 服务器并使支持 NTP 的设备和服务器同步时间。
希望能对你有所帮助
希望能对你有所帮助
--------------------------------------------------------------------------------
@ -156,7 +156,7 @@ via: http://xmodulo.com/setup-ntp-server-centos.html
作者:[Sarmed Rahman][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,65 +1,63 @@
如何用mod_jk连接器来集成Apache2和Tomcat 7
================================================================================
Apache是最流行的web服务器通常用来接收客户端的请求并响应。它得到一个URL并将它翻译成一个文件名或者静态请求并将文件从本地磁盘中通过因特网返回,或者将它翻译成程序名执行它接着将输出返回给请求方。如果web服务器不能处理和完成请求它会返回一个错误信息。
Apache是最流行的web服务器,它通常用来接收客户端的请求并响应。它得到一个URL并将它翻译成一个文件名或者静态请求并将文件从本地磁盘中取出,通过因特网返回;或者将它翻译成程序执行它接着将输出返回给请求方。如果web服务器不能处理和完成请求它会返回一个错误信息。
在本篇中我们会列出Apache的特性以及我们该如何用mod_jk连接器来集成Tomcat7和Tomcat8.
在本篇中我们会列出Apache的特性以及我们该如何用mod\_jk连接器来集成Tomcat 7和Tomcat 8.
### Apache的特性 ###
如我们所说Apache是最流行的web服务器。下面是流行背后的原因
- 它是自由工具,你可以很简单地下载和安装
- 它开放源码因此你可以查看源码,调整它,优化它,并且修复错误和安全漏洞。也可以增加新的功能和模块。
- 它开放源码因此你可以查看源码,调整它,优化它,并且修复错误和安全漏洞。也可以增加新的功能和模块。
- 它可以用在只有一两个页面的小网站,或者是有成千上万个页面的大网站,每月处理上百万的常规访问者的请求。它可以同时处理静态和动态内容。
- 提高的缓存模块mod_cache、 mod_disk_cache、 mod_mem_cache
- 改进的缓存模块mod\_cache、 mod\_disk\_cache、 mod\_mem\_cache
- Apache 2 支持 IPv6.
### Tomcat 目录 ###
### Tomcat 目录 ###
${tomcat_home} 是tomcat的根目录。你的tomcat安装应该有下面的子目录
- ${tomcat_home}\conf 存放不同配置文件的地方
- ${tomcat_home}\webapps 包含示例程序
- ${tomcat_home}\bin 存放插件的地方
- ${tomcat_home}\bin 存放你的Web服务器的插件的地方
### Mod_jk 模块 ###
mod_jk有两种可接受的方式二进制或者源码。取决于你运行的web服务器的平台二进制版本的mod_jk也许可以找到。如果有二进制版本的话建议使用这个。
mod\_jk有两种可接受的方式二进制或者源码。取决于你运行的web服务器的平台也许有符合你的平台的二进制版本的mod\_jk。如果有的话建议使用这个。
mod_jk模块在这些平台上开发及测试过
mod\_jk模块在这些平台上开发及测试过
- Linux、 FreeBSD、 AIX、 HP-UX、 MacOS X、 Solaris ,应该在主流的Unix平台上都支持Apache 1.3 和/或者 2.x。
- 0-i386 SP4/SP5/SP6a (应该可以于其他的服务包一起工作), Win2K and WinXP and Win98
- Linux、 FreeBSD、 AIX、 HP-UX、 MacOS X、 Solaris 应该在主流的支持Apache 1.3 和/或者 2.x的Unix平台上都工作
- WinNT 4.0-i386 SP4/SP5/SP6a (应该可以与其他的服务包一起工作), Win2K 和 WinXP 和 Win98
- Cygwin (需要你有apache服务器及autoconf/automake支持工具)
- Netware
- i5/OS V5R4 (System I) 中的 Apache HTTP Server 2.0.58。 确保已经安装了Apache PTF
- Tomcat 3.2 到 Tomcat 8.
- i5/OS V5R4 (System I) ,带有 Apache HTTP Server 2.0.58。 确保已经安装了最新的 Apache PTF
- Tomcat 3.2 到 Tomcat 8
The mod_jk 需要两个组件:
The mod\_jk 需要两个组件:
- **mod_jk.xxx** Apache HTTP服务器模块取决于你的操作系统它可能是mod_jk.so、mod_jk.nlm或者MOD_JK.SRVPGM。
- **workers.properties** - 描述主机以及处理器使用的端口Tomcat进程。在下载的源码内可以在conf目录下找到workers.properties文件。
- **mod\_jk.xxx** Apache HTTP服务器模块取决于你的操作系统它可能是mod\_jk.so、mod\_jk.nlm或者mod\_jk.SRVPGM。
- **workers.properties** - 描述Worker Tomcat进程所用的主机以及处理器使用的端口。在下载的源码的conf目录下找到示例的workers.properties文件。
和Apache HTTP服务器其他的模块一样mod_jk应该安装在你的Apache服务器下的模块目录下/usr/lib/apache你应该更新你的**httpd.conf**文件。
和Apache HTTP服务器其他的模块一样mod\_jk应该安装在你的Apache服务器下的模块目录下/usr/lib/apache而且你应该更新你的**httpd.conf**文件。
### 安装 ###
它需要非root用户在安装钱使用“sudo”特权。现在我们开始安装我们将使用下面的命令来安装Apache2和Tomcat
在开始安装前非root用户需要使用“sudo”特权。现在我们开始安装我们将使用下面的命令来安装Apache2和Tomcat
sudo apt-get install apache2
sudo apt-get install apache2
sudo apt-get install tomcat7
sudo apt-get install tomcat7-admin
下面在我们将会使用下面的命令来创建一个测试程序:
下面,我们将会使用如下的命令来创建一个测试程序:
cd /var/lib/tomcat7/webapps
sudo mkdir tomcat-demo
sudo mkdir tomcat-demo/goodmoring
sudo vim tomcat-demo/helloworld/index.jsp
粘贴下面的代码:
粘贴下面的代码到上述的 index.jsp
<HTML>
<HEAD>
@ -71,19 +69,19 @@ The mod_jk 需要两个组件:
</BODY>
</HTML>
一切完毕后我们将使用下面的命令安装和配置mod_jk:
一切完毕后我们将使用下面的命令安装和配置mod\_jk:
sudo apt-get install libapache2-mod-jk
我们使用下面的命令启用Tomcat的8443转发端口
我们需要使用下面的命令启用Tomcat的8443转发端口
sudo vim /etc/tomcat7/server.xml
我们将解除下面的注释行:
解除下面的注释行:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
之后,我们将用下面的命令Apache创建workers.properties文件
之后,我们将用下面的命令Apache创建workers.properties文件
sudo vim /etc/apache2/workers.properties
@ -123,7 +121,7 @@ The mod_jk 需要两个组件:
### 总结 ###
在本篇中我们展示了你该如何使用mod_jk连接器配置和安装Apache2以及Tomcat7。
在本篇中我们展示了你该如何使用mod\_jk连接器配置和安装Apache2以及Tomcat7。
--------------------------------------------------------------------------------
@ -131,7 +129,7 @@ via: http://www.unixmen.com/integrate-apache2-tomcat-7-using-mod_jk-connector/
作者:[anismaj][a]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,7 +1,6 @@
KDE Plasma 5.3已发布Kubuntu 15.04升级攻略
在 Kubuntu 15.04 中升级 KDE Plasma 5.3
================================================================================
**KDE[已经宣布][1]Plasma 5.3的稳定版已经准备就绪,它包含了一个新的电源管理方面的稳定特性。**
**KDE[已经发布了][1]Plasma 5.3的稳定版,它包含了一个新的电源管理方面的稳定特性。**
[先前四月份的beta版][2]已经让我们印象深刻甚至跃跃欲试了Plasma 5桌面环境的稳定版更新的最新更新已经稳定并且可以下载了。
@ -10,7 +9,8 @@ Plasma 5.3继续改善和细化了全新的KDE桌面它添加了大量的特
### Plasma 5.3中的新东西 ###
![Better Bluetooth Management in Plasma 5.3](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/bluetooth-applet-in-kde.jpg)
Plasma 5.3中更好的蓝牙管理
*Plasma 5.3中更好的蓝牙管理*
而[在早期关于Plasma 5.3的文章][3]中,我们触及了大量**新特性**,这其中很多都值得反复说道说道。
@ -18,19 +18,21 @@ Plasma 5.3中更好的蓝牙管理
在连接了外部监视器的时候合上笔记本盖子时,不会再触发‘挂起’操作。这个新的行为被称之为‘**影院模式**’,并且默认开启。但是,可以通功过电源管理设置中的相关选项禁用。
**蓝牙功能被改善**,带来了一个全新的面板小程序,使得在连接到并配置配对的蓝牙设备,如能手机、键盘和扬声器时,比以往更为便捷。
**蓝牙功能被改善**,带来了一个全新的面板小程序,使得在连接到并配置配对的蓝牙设备,如能手机、键盘和扬声器时,比以往更为便捷。
同样对于Plasma 5.3**KDE中的轨迹板配置更为方便**,这多亏了新的安装和设置模块。
![Trackpad, Touchpad. Tomato, Tomayto.](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/touchpad-kde.jpg)
轨迹板、触控板。Tomato, Tomayto。
对于Plasma小部件狂热者带来了一个**按住并锁定**手势。当启用该功能,会隐藏移动鼠标时出现的设置处理。取而代之的是,它只会在长点击小部件时发生该行为。
*轨迹板、触控板。Tomato, Tomayto。*
谈到widget-y这类事情时该发布版中**再次引入了几个旧的Plasmoid最受欢迎的东西**,包括一个有用的系统监视器、便利的硬盘驱动器统计和一个漫画阅读器。
对于Plasma小部件狂热者它带来了一个**按住并锁定**手势。当启用该功能,会隐藏移动鼠标时出现的设置处理。取而代之的是,它只会在长点击小部件时发生该行为。
谈到widget-y这类事情时该发布版中**再次引入了几个旧的Plasmoid中最受欢迎的东西**,包括一个有用的系统监视器、便利的硬盘驱动器统计和一个漫画阅读器。
### 了解更多&尝试 ###
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/plasma-5.3-beta.jpg\)
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/plasma-5.3-beta.jpg)
一张全部内容的完整列表——我说全部内容——是指Plasma 5.3中[在官方修改日志中][4]列出的新的和改进的内容。
@ -40,7 +42,7 @@ Plasma 5.3中更好的蓝牙管理
如果你需要超级稳定的系统你可以使用这些镜像来尝试新特性但是你可以继续使用你的主要计算机上与你的版本对应的KDE版本。
但是,如果你对实验版满意——请阅:能够处理任何包冲突,或者由尝试升级桌面环境而导致的系统问题——那么你可以安装。
不过,如果你对实验版满意——请注意:能够处理任何包冲突,或者由尝试升级桌面环境而导致的系统问题——那么你可以安装。
### 安装Plasma 5.3到Kubuntu 15.04 ###
@ -52,20 +54,19 @@ Kubuntu移植PPA可能也会升级除了安装在你系统上的Plasma外的其
目前为止使用命令行来升级Kubuntu中的到Plasma 5.3是最快速的方法:
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt-get update && sudo apt-get dist-upgrade
在升级过程完成后,如果一切顺利,你应该重启计算机。
如果你正在使用一个备用桌面环境比如LXDE、Unity或者GNOME则你需要在运行完上面的两个命令后安装Kubuntu桌面包你可以在Ubuntu软件中心找到
To downgrade to the stock version of Plasma in 15.04 you can use the PPA-Purge tool:
要降级到15.04中自带的 Plasma 版本的话,你可以使用 PPA-Purge 工具:
sudo apt-get install ppa-purge
sudo ppa-purge ppa:kubuntu-ppa/backports
请在下面的评论中留言,让我们知道你怎么升级/测试过程是怎样的别忘了告诉我们你在下一个Plasma 5桌面中要看到的特性。
请在下面的评论中留言,让我们知道你怎么升级测试过程是怎样的别忘了告诉我们你在下一个Plasma 5桌面中要看到的特性。
--------------------------------------------------------------------------------
@ -73,7 +74,7 @@ via: http://www.omgubuntu.co.uk/2015/04/kde-plasma-5-3-released-heres-how-to-upg
作者:[Joey-Elijah Sneddon][a]
译者:[GOLinux](https://github.com/GOLinux)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -0,0 +1,65 @@
iptraf一个实用的TCP/UDP网络监控工具
================================================================================
[iptraf][1]是一个基于ncurses的IP局域网监控器用来生成包括TCP信息、UDP计数、ICMP和OSPF信息、以太网负载信息、节点状态信息、IP校验和错误等等统计数据。
它基于ncurses的用户界面可以使用户免于记忆繁琐的命令行开关。
### 特征 ###
- IP流量监控器用来显示你的网络中的IP流量变化信息。包括TCP标识信息、包以及字节计数ICMP细节OSPF包类型。
- 简单的和详细的接口统计数据包括IP、TCP、UDP、ICMP、非IP以及其他的IP包计数、IP校验和错误接口活动、包大小计数。
- TCP和UDP服务监控器能够显示常见的TCP和UDP应用端口上发送的和接收的包的数量。
- 局域网数据统计模块,能够发现在线的主机,并显示其上的数据活动统计信息。
- TCP、UDP、及其他协议的显示过滤器允许你只查看感兴趣的流量。
- 日志功能。
- 支持以太网、FDDI、ISDN、SLIP、PPP以及本地回环接口类型。
- 利用Linux内核内置的原始套接字接口允许它指iptraf能够用于各种支持的网卡上
- 全屏,菜单式驱动的操作。
###安装方法###
**Ubuntu以及其衍生版本**
sudo apt-get install iptraf
**Arch Linux以及其衍生版本**
sudo pacman -S iptra
**Fedora以及其衍生版本**
sudo yum install iptraf
### 用法 ###
如果不加任何命令行选项地运行**iptraf**命令,程序将进入一种交互模式,通过主菜单可以访问多种功能。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_1.png)
简易的上手导航菜单。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_2.png)
选择要监控的接口。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_3.png)
接口**ppp0**处的流量。
![](http://1102047360.rsc.cdn77.org/wp-content/uploads/2015/01/iptraf_4.png)
试试吧!
--------------------------------------------------------------------------------
via: http://www.unixmen.com/iptraf-tcpudp-network-monitoring-utility/
作者:[Enock Seth Nyamador][a]
译者:[DongShuaike](https://github.com/DongShuaike)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.unixmen.com/author/seth/
[1]:http://iptraf.seul.org/about.html

View File

@ -1,6 +1,6 @@
zBackup——一个通用的重复数据备份工具
zBackup:一个多功能的去重备份工具
================================================================================
zbackup是一个基于rsync思想的全局重数据备份工具。给它传入一个大的tar文件后它会存储该文件的重复区域(仅进行一次)然后对结果进行压缩并根据参数确定是否对其加密。传入另一个tar文件后它会从之前的已备份文件中复用重复数据。只有新的改动会被保存,并且只要文件变动不是很大,需要的存储空间非常少。任何时候之前的已备份文件都可以被完整地读出来。
zbackup是一个基于rsync思想的全局重数据备份工具。给它传入一个大的tar文件后它会仅存储一次该文件的重复部分然后对结果进行压缩并根据参数确定是否对其加密。传入另一个tar文件后它会从之前的已备份文件中复用重复数据。只有新的改动会被保存并且只要文件差异不是很大,需要的存储空间非常少。无论何时,之前的已备份文件都可以被完整地读出来。
### zBackup特性 ###
@ -8,7 +8,7 @@ zbackup是一个基于rsync思想的全局重复数据备份工具。给它传
- 使用内置的AES加密算法加密已备份数据
- 可以删除旧的已备份数据
- 使用一个64位滚动哈希保持软碰撞数量为0
- 已备份数据由不可更改的文件组成。任何现有文件都没有被更改过
- 备份库由不可更改的文件组成,只有库中不存在的文件才能修改
- 使用C++语言编写,并且只有适量的依赖库
- 可以在生产环境安全使用
- 可以在不同备份库中交换数据而无需重新压缩
@ -25,7 +25,7 @@ zbackup是一个基于rsync思想的全局重复数据备份工具。给它传
zbackup init [--non-encrypted] [--password-file ~/.my_backup_password ] /my/backup/repo
`zbackup backup`命令备份一个由`tar c`创建的tar文件到刚才使用`zbackup init`初始化的备份库。译注实际使用时类似这样tar c files | zbackup ...
`zbackup backup`命令备份一个由`tar c`命令创建的tar文件到刚才使用`zbackup init`初始化的备份库。(LCTT 译注实际使用时类似这样tar c files | zbackup ...
zbackup [--password-file ~/.my_backup_password ] [--threads number_of_threads ] backup /my/backup/repo/backups/backup-`date +%Y-%m-%d'`
@ -37,18 +37,15 @@ zbackup是一个基于rsync思想的全局重复数据备份工具。给它传
- -non-encrypted -- 不加密备份库。
- --password-file ~/.my_backup_password -- 使用位于~/.my_backup_password的口令文件来加密备份库和待备份文件以及解密已备份文件。
- --threads number_of_threads -- 限制并行LZMA压缩的线程数number_of_threads。建议在32位的系统平台使用。
- --threads number_of_threads -- 限制并行LZMA压缩的线程数number_of_threads。建议在32位的系统平台使用。
- --cache-size cache_size_in_mb -- 使用cache_size_in_mb中的缓存大小来加速恢复文件的过程。
### zBackup相关文件 ###
### 上述命令中 zBackup 相关文件 ###
~/.my_backup_password 用来加密备份库和待备份文件以及解密已备份文件。更多细节见zbackup。
/my/backup/repo 存放备份库的目录。
/my/precious/restored-tar 用来恢复已备份文件的tar文件。
/my/backup/repo/backups/backup-`date +%Y-%m-%d'` 指定的之前已备份文件的文件名。
- ~/.my_backup_password 用来加密备份库和待备份文件以及解密已备份文件。更多细节见zbackup。
- /my/backup/repo 存放备份库的目录。
- /my/precious/restored-tar 用来恢复已备份文件的tar文件。
- /my/backup/repo/backups/backup-`date +%Y-%m-%d'` 指定的之前已备份文件的文件名。
--------------------------------------------------------------------------------
@ -56,7 +53,7 @@ via: http://www.ubuntugeek.com/zbackup-a-versatile-deduplicating-backup-tool.htm
作者:[ruchi][a]
译者:[goreliu](https://github.com/goreliu)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,18 +1,19 @@
使用ARChon环境在Ubuntu上运行Android应用
使用 ARChon 运行时环境在 Ubuntu 上运行 Android 应用
================================================================================
在此之前我们尝试过在多款安卓应用模拟器工具上运行安卓应用比如Genymotion、VirtualBox和Android SDK等。但是有了这套全新的Chrome安卓运行环境就可以在Chrome浏览器中运行安卓应用了。所以下面是一些步骤来指导如何使用ARChon运行环境在Ubuntu上安装安卓应用。
谷歌已经公布了[首批支持原生运行在Chrome OS的安卓应用][1],而使用一个全新的“**安卓运行环境**”扩展程序使其成为可能。如今一位名为Vlad Filippov的开发者已经找到了一种把安卓应用移植到桌面端Chrome浏览器的方法。他把chromeos-apk脚本和ARChon安卓运行环境扩展程序两者紧密结合在一起使得安卓应用可以运行在Windows、Max和Linux系统的桌面端Chrome浏览器中
在此之前我们尝试过在多款安卓应用模拟器工具上运行安卓应用比如Genymotion、VirtualBox和Android SDK等。但是有了这套全新的Chrome安卓运行环境就可以在Chrome浏览器中运行安卓应用了。所以下面是一些步骤来指导你如何使用ARChon运行时环境在Ubuntu上安装安卓应用
应用借助这种运行环境时的性能并不是很好。同样由于它是官方运行环境的非官方二次开发包而且运行在Google的Chrome OS之外因此一些如webcam和speaker等系统集成工具可能需要通过打补丁获得或者根本就没有。
谷歌已经公布了[首批支持原生运行在Chrome OS的安卓应用][1],而这个全新的“**安卓运行时环境**”扩展程序使其成为可能。如今一位名为Vlad Filippov的开发者已经找到了一种把安卓应用移植到桌面端Chrome浏览器的方法。他把chromeos-apk脚本和ARChon安卓运行环境扩展程序两者紧密结合在一起使得安卓应用可以运行在Windows、Max和Linux系统的桌面端Chrome浏览器中。
应用借助这种运行环境时的性能并不是很好。同样由于它是官方运行环境的非官方二次开发包而且运行在Google的Chrome OS之外因此一些如摄像头和喇叭等系统内置设备可能需要通过打补丁获得或者根本不支持。
### 安装Chrome ###
首先需要在机器上安装Chrome版本要求是Chrome 37或者更高。可以从[Chrome浏览器的下载页面][2]下载。
如果打算安装Dev Channel版本,按照如下操作。
如果打算安装开发通道版本,按照如下操作。
首先,使用这个命令为Google Chrome添加软件源列表
使用这个命令为Google Chrome添加软件源列表
$ wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
$ sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
@ -23,7 +24,8 @@
$ sudo apt-get update
现在就可以安装非稳定版的google chrome即开发版。
现在就可以安装非稳定版的google chrome即开发版
$ sudo apt-get install google-chrome-unstable
![Installing Google chrome unstable](http://blog.linoxide.com/wp-content/uploads/2015/02/installing-google-chrome-unstable.png)
@ -34,11 +36,11 @@
**32位** Ubntu发行版
- [Download Archron for 32-bit Ubuntu][3]
- [下载 32 位版 Ubuntu 上的 Archron][3]
**64位** Ubntu发行版
- [Download Archron for 64-bit Ubuntu][4]
- [下载 64 位版 Ubuntu 上的 Archron][4]
下载好运行环境安装包后,从.zip文件中解压并将解压得到的目录移动到Home目录。操作命令如下
@ -48,11 +50,11 @@
$ unzip ARChon-v1.1-x86_32.zip ~/
接下来是安装运行时环境首先打开Google Chrome浏览器在地址栏键入**chrome://extensions**。然后,选中“**开发者模式**”。最后,点击“**载入未打包扩展程序**”,选择刚才放置在**~/Home**下面的文件夹。
接下来是安装运行时环境首先打开Google Chrome浏览器在地址栏键入**chrome://extensions**。然后,选中“**开发者模式**”。最后,点击“**载入未打包扩展程序**”选择刚才放置在**~/Home**下面的文件夹。
### 安装 ChromeOS-APK ###
如果要用到上面提到的应用那么手动转换这些APKs无需复杂的操作——只需要安装“[chromeos-apk][5]”命令行JavaScript工具。可以在Node Package Modulesnpm管理器中安装它。为了安装npm和chromeos-apk在shell或终端中运行下面命令
如果要用到上面提到的那些应用那么手动转换这些APK无需复杂的操作——只需要安装“[chromeos-apk][5]”命令行JavaScript工具。可以在Node Package Modulesnpm管理器中安装它。为了安装npm和chromeos-apk在shell或终端中运行下面命令
$ sudo apt-get install npm nodejs nodejs-legacy
@ -86,7 +88,7 @@
### 运行安卓Apk ###
最后打开chrome浏览器然后进入chrome://extensions页面勾选开发者模式。点击“载入未打包扩展程序”按钮选择文件夹载入刚创建的脚本
最后打开chrome浏览器然后进入chrome://extensions页面勾选开发者模式。点击“载入未打包扩展程序”按钮选择上面脚本刚创建的文件夹
至此就可以打开Chrome应用启动器运行安卓应用了。
@ -100,7 +102,7 @@ via: http://linoxide.com/ubuntu-how-to/android-apps-ubuntu-archon-runtime/
作者:[Arun Pyasi][a]
译者:[KayGuoWhu](https://github.com/KayGuoWhu)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -0,0 +1,144 @@
如何在Fedora或CentOS上使用Samba共享文件夹
================================================================================
如今无论在家里或者是办公场所不同的电脑之间共享文件夹已不是什么新鲜事了。在这种趋势下现代操作系统通过网络文件系统的方式使得电脑间数据的交换变得简单而透明。如果您工作的环境中既有微软的Windows又有Linux那么一个共享文件及目录的方式便是通过一个跨平台网络文件共享协议SMB/CIFS。Windows原生的支持SMB/CIFSLinux也通过开源的软件Samba实现了SMB/CIFS协议。
在这篇文章中,我们将展示**如何使用Samba共享文件夹**。我们使用的Linux平台是**Fedora或CentOS**。这篇文章分为四部分。首先我们在Fedora/CentOS环境下安装Sambe。接着我们讨论如何调整SELinux和防火墙配置以允许Samba的文件共享。最后我们介绍如何使用Samba来共享文件夹。
### 步骤1在Fedora和CentOS上安装Samba ###
首先安装Samba以及进行一些基本的配置。
检验Samba是否已经安装在您的系统中
$ rpm -q samba samba-common samba-client
如果上面的命令没有任何输出这意味着Samba并未安装。这时应使用下面的命令来安装Samba。
$ sudo yum install samba samba-common samba-client
接下来创建一个用于在网络中共享的本地文件夹。这个文件夹应该以Samba共享的方式导出到远程的用户。在这个指南中我们会在顶层文件夹'/'中创建这个文件夹,因此,请确保您有相应的权限。
$ sudo mkdir /shared
如果您想在您的home文件夹内创建共享文件夹例如~/shared您必须激活SELinux中Samba的home文件夹共享选项具体将在后面提到。
在创建/shared文件夹后设置文件夹权限以保证其余用户可以访问它。
$ sudo chmod o+rw /shared
如果您不想其他用户对该文件夹拥有写权限,您需要移除命令中的'w'选项。
$ sudo chmod o+r /shared
接下来创建一个空文件来测试。这个文件可以被用来验证Samba的共享已经被挂载。
$ sudo touch /shared/file1
### 步骤2为Samba配置SELinux ###
接下来我们需要再次配置SELinux。在Fedora和CentOS发行版中SELinux是默认开启的。SELinux仅在正确的安全配置下才允许Samba读取和修改文件或文件夹。例如加上'samba_share_t'属性标签)。
下面的命令为文件的配置添加必要的标签:
$ sudo semanage fcontext -a -t samba_share_t "<directory>(/.*)?"
<directory>替换为我们之前为Samba共享创建的本地文件夹例如/shared
$ sudo semanage fcontext -a -t samba_share_t "/shared(/.*)?"
我们必须执行restorecon命令来激活修改的标签命令如下
$ sudo restorecon -R -v /shared
![](https://farm9.staticflickr.com/8584/16652774078_2055f45f70_b.jpg)
为了通过Samba共享在我们home文件夹内的文件夹我们必须在SELinux中开启共享home文件夹的选项该选项默认被关闭。下面的命令能达到该效果。如果您并未共享您的home文件夹那么您可以跳过该步骤。
$ sudo setsebool -P samba_enable_home_dirs 1
### 步骤3为Samba配置防火墙 ###
下面的命令用来打开防火墙中Samba共享所需的TCP/UDP端口。
如果您在使用firewalld例如在Fedora和CentOS7下接下来的命令将会永久的修改Samba相关的防火墙规则。
$ sudo firewall-cmd --permanent --add-service=samba
如果您在防火墙中使用iptables例如CentOS6或者更早的版本可以使用下面的命令来打开Samba必要的向外的端口。
$ sudo vi /etc/sysconfig/iptables
----------
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
然后重启iptables服务
$ sudo service iptables restart
### 步骤4更改Samba配置 ###
后面的步骤用来配置Samba以将本地文件夹导出为Samba共享文件夹。
使用文件编辑器打开Samba配置文件并将下面的行添加到文件的末尾。
$ sudo nano /etc/samba/smb.conf
----------
[myshare]
comment=my shared files
path=/shared
public=yes
writeable=yes
上面在括号内的文本(例如,"myshare"是Samba共享的资源的名字它被用来从远程主机存取Samba共享。
创建Samba用户帐户这是挂载和导出Samba文件系统所必须的。我们可以使用smbpasswd工具来创建一个Samba用户。注意Samba用户帐户必须是已有的Linux用户。如果您尝试使用smbpasswd添加一个不存在的用户它会返回一个错误的消息。
如果您不想使用任何已存在的Linux用户作为Samba用户您可以在您的系统中创建一个新的用户。为安全起见设置新用户的登录脚本为/sbin/nologin并且不创建该用户的home文件夹。
在这个例子中,我们创建了一个名叫"sambaguest"的用户,如下:
$ sudo useradd -M -s /sbin/nologin sambaguest
$ sudo passwd sambaguest
![](https://farm9.staticflickr.com/8702/16814479366_53f540d3ba_b.jpg)
在创建一个新用户后使用smbpasswd命令添加Samba用户。当这个命令询问一个密码时您可以键入一个与其用户密码不同的密码。
$ sudo smbpasswd -a sambaguest
激活Samba服务并检测Samba服务是否在运行。
$ sudo systemctl enable smb.service
$ sudo systemctl start smb.service
$ sudo systemctl is-active smb
![](https://farm8.staticflickr.com/7607/16652984770_622f24bccc_b.jpg)
使用下面的命令来查看Samba中共享的文件夹列表。
$ smbclient -U sambaguest -L localhost
![](https://farm8.staticflickr.com/7281/16220411103_06bf585901_b.jpg)
接下来是在Thunar文件管理器中访问Samba共享文件夹以及对file1进行拷贝复制的截图。注意Samba的共享内容可以通过在Thunar中通过 `smb://<samba-server-IP-address>/myshare` 这个地址来访问。
![](https://farm8.staticflickr.com/7644/16218011174_c8b34fcedc_b.jpg)
--------------------------------------------------------------------------------
via: http://xmodulo.com/share-directory-samba-fedora-centos.html
作者:[Kristophorus Hadiono][a]
译者:[wwy-hust](https://github.com/wwy-hust)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://xmodulo.com/author/kristophorus

View File

@ -1,8 +1,8 @@
Sleuth Kit -- 一个用来分析磁盘映像和恢复文件的开源取证工具
Sleuth Kit一个用来分析磁盘映像和恢复文件的开源取证工具
================================================================================
SIFT 是一个由 SANS 公司提供的基于 Ubuntu 的取证发行版。它包含许多取证工具,如 Sleuth kit/Autopsy 。但 Sleuth kit / Autopsy 可以直接在 Ubuntu 或 Fedora 发行版本上直接安装,而不必下载 SIFT 的整个发行版本。
SIFT 是一个由 SANS 公司提供的基于 Ubuntu 的取证发行版。它包含许多取证工具,如 Sleuth kit/Autopsy 。但 Sleuth kit/Autopsy 可以直接在 Ubuntu 或 Fedora 发行版本上直接安装,而不必下载 SIFT 的整个发行版本。
Sleuth Kit/Autopsy 是一个开源的电子取证调查工具,它被用于从磁盘映像中恢复丢失的文件,基于事件响应的磁盘映像的分析。 Autopsy 工具是 sleuth kit 的一个网页接口,支持 sleuth kit 的所有功能。这个工具在 Windows 和 Linux 平台下都可获取到。
Sleuth Kit/Autopsy 是一个开源的电子取证调查工具,它可以用于从磁盘映像中恢复丢失的文件,以及为了特殊事件进行磁盘映像分析。 Autopsy 工具是 sleuth kit 的一个网页接口,支持 sleuth kit 的所有功能。这个工具在 Windows 和 Linux 平台下都可获取到。
### 安装 Sleuth kit ###
@ -38,7 +38,7 @@ Sleuth Kit/Autopsy 是一个开源的电子取证调查工具,它被用于从
### 安装 Autopsy 工具 ###
Sleuth kit 已经安装完毕,现在我们将为它安装 autopsy 界面。从 [sleuthkit 的 autopsy 页面][2] 下载 Autopsy 软件。使用下面的命令在虚拟终端下使用 wget 命令来下载它,下图展示了这个过程。
Sleuth kit 已经安装完毕,现在我们将为它安装 autopsy 界面。从 [sleuthkit 的 autopsy 页面][2]下载 Autopsy 软件。使用下面的命令在虚拟终端下使用 wget 命令来下载它,下图展示了这个过程。
# wget http://kaz.dl.sourceforge.net/project/autopsy/autopsy/2.24/autopsy-2.24.tar.gz
@ -70,7 +70,7 @@ autopsy 的配置脚本将询问 NSRL (National Software Reference Library) 和
![Autopsy](http://blog.linoxide.com/wp-content/uploads/2015/03/autopsy-started.png)
在浏览器中键入下面的地址来获取 autopsy 的界面:
在浏览器中键入下面的地址来访问 autopsy 的界面:
http://localhost:9999/autopsy
@ -90,7 +90,7 @@ autopsy 的配置脚本将询问 NSRL (National Software Reference Library) 和
![添加主机的详细信息](http://blog.linoxide.com/wp-content/uploads/2015/03/add-host-detial.png)
点击 **增加映像** 按钮来为取证分析添加映像文件。
添加主机后,点击 **增加映像** 按钮来为取证分析添加映像文件。
![添加映像](http://blog.linoxide.com/wp-content/uploads/2015/03/add-image.png)
@ -98,11 +98,11 @@ autopsy 的配置脚本将询问 NSRL (National Software Reference Library) 和
![添加映像文件](http://blog.linoxide.com/wp-content/uploads/2015/03/Add-image-file.png)
正如下图中展示的那样,我们已经键入了 Linux 映像文件的路径。在我们这个例子中,映像文件是磁盘分区。
正如下图中展示的那样,我们已经键入了 Linux 映像文件的路径。在我们这个例子中,映像文件类型是磁盘分区。
![添加映像分区](http://blog.linoxide.com/wp-content/uploads/2015/03/add-image-parition.png)
点击 下一步 按钮并在下一页中选择 **计算散列值** 的选项,这在下图中有展示。它也将检测所给映像的文件系统类型。
点击“下一步”按钮并在下一页中选择 **计算散列值** 的选项,这在下图中有展示。它也将检测所给映像的文件系统类型。
![映像和文件系统详情](http://blog.linoxide.com/wp-content/uploads/2015/03/image-and-file-system-detail.png)
@ -142,7 +142,7 @@ autopsy 的配置脚本将询问 NSRL (National Software Reference Library) 和
### 结论 ###
希望这篇文章能够给那些进入磁盘映像静态分析领域的新手提供帮助。Autopsy 是 sleuth kit 的网页界面,提供了在 Windows 和 Linux 磁盘映像中进行诸如字符串提取,恢复被删文件,时间线分析,网络浏览历史,关键字搜索和邮件分析等功能。
希望这篇文章能够给那些进入磁盘映像静态分析领域的新手提供帮助。Autopsy 是 sleuth kit 的网页界面,提供了在 Windows 和 Linux 磁盘映像中进行诸如字符串提取,恢复被删文件,时间线分析,网络浏览历史,关键字搜索和邮件分析等功能。
--------------------------------------------------------------------------------
@ -150,7 +150,7 @@ via: http://linoxide.com/ubuntu-how-to/autopsy-sleuth-kit-installation-ubuntu/
作者:[nido][a]
译者:[FSSlc](https://github.com/FSSlc)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,15 +1,15 @@
Linux用户应知应会的7个ls命令异用技巧
Linux用户应知应会的7个ls命令的独特技巧
================================================================================
在前面我们系列报道的两篇文章中我们已经涵盖了关于ls命令的绝大多数内容。本文时ls命令系列的最后一部分。如果你还没有读过该系列的其它两篇文章你可以访问下面的链接。
注:以下三篇都做过源文,看看翻译了没有,如果发布了可适当改链接地址
- [Linux中的15个ls命令基本用法实例][1]
- [关于Linux “ls”命令的15个面试问题 第一部分][2]
- [10个有用的ls命令面试问题 第二部分][3]
- [Linux中的15个基本ls命令示例][1]
- [15 个ls命令的面试问题][2]
- [10 个ls命令面试的问题][3]
![7 Quirky ls Command Tricks](http://www.tecmint.com/wp-content/uploads/2015/03/ls-command-tricks.jpg)
7个ls命令异用技巧
*7个ls命令独特技巧*
### 1. 以各种时间格式附带时间戳列出目录中的内容 ###
@ -17,11 +17,11 @@ Linux用户应知应会的7个ls命令异用技巧
# ls -l time-style=[STYLE] (方法 A)
**注意** - 上面的开关`--time`格式必须和`-l`开关同时使用,否则达不到目的
**注意** - 上面的开关`--time`格式必须和`-l`开关同时使用,否则达不到目的。
# ls full-time (方法 B)
# ls -full-time (方法 B)
用以下任何一个选项替换`[STYLE]`。
可以用以下任何一个选项替换`[STYLE]`。
full-iso
long-iso
@ -29,64 +29,59 @@ Linux用户应知应会的7个ls命令异用技巧
locale
+%H:%M:%S:%D
**注意** - 在上面行中HMSD日期的顺序可以任意调整。
此外,你只需选择那些相关的选项,而不是所有选项。例如,`ls -l --time-style=+%H`将只显示小时。
`ls -l --time-style=+%H:%M:%D`将显示小时、分钟和日期。
**注意** - 在上面行中HMSD的顺序可以任意调整。此外你只需选择那些相关的选项而不是所有选项。例如`ls -l --time-style=+%H`将只显示小时。`ls -l --time-style=+%H:%M:%D`将显示小时、分钟和日。
# ls -l --time-style=full-iso
![ls Command Full Time Style](http://www.tecmint.com/wp-content/uploads/2015/03/ls-Command-Full-Time-Style.gif)
ls命令完整时间格式
*ls命令的完整 ISO时间格式*
# ls -l --time-style=long-iso
![Long Time Style Listing](http://www.tecmint.com/wp-content/uploads/2015/03/Long-Time-Listing-Format.gif)
长时间格式列表
*长时间格式列表*
# ls -l --time-style=iso
![Time Style Listing](http://www.tecmint.com/wp-content/uploads/2015/03/Local-Time-Style-Listing.gif)
时间格式列表
*时间格式列表*
# ls -l --time-style=locale
![Locale Time Style Listing](http://www.tecmint.com/wp-content/uploads/2015/03/Hour-Mintue-Time-Style-Listing.gif)
本地时间格式列表
*本地时间格式列表*
# ls -l --time-style=+%H:%M:%S:%D
![Date and Time Style Listing](http://www.tecmint.com/wp-content/uploads/2015/03/Full-Time-Style-Listing.gif)
日期和时间格式列表
*日期和时间格式列表*
# ls --full-time
![Full Style Time Listing](http://www.tecmint.com/wp-content/uploads/2015/03/Full-Style-Time-Listing.gif)
完整格式时间列表
*完整格式时间列表*
### 2. 以多种格式列出目录内容,如以逗号分隔、水平格式、长格式、垂直格式、交叉格式等列出。 ###
目录内容可以用以下建议的ls命令各种格式列出
目录内容可以用以下建议的ls命令各种格式列出
- 交叉
- 逗号
- 水平
- 长格式
- 单栏
- 详情
- 垂直
# ls -format=across
# ls --format=comma
# ls --format=horizontal
# ls --format=long
# ls --format=single-column
# ls --format=verbose
# ls --format=vertical
# ls --format=across # 交叉
# ls --format=comma # 逗号
# ls --format=horizontal # 水平
# ls --format=long # 长格式
# ls --format=single-column # 单栏
# ls --format=verbose # 详情
# ls --format=vertical # 垂直
![Listing Formats of ls Command](http://www.tecmint.com/wp-content/uploads/2015/03/ls-command-Listing-Formats.gif)
ls命令的列出格式
*ls命令的列出格式*
### 3. 使用ls命令为目录内容输出结果添加像/=@|)这样的指示符。 ###
@ -95,7 +90,8 @@ ls命令的列出格式
# ls -p
![Append Indicators to Content](http://www.tecmint.com/wp-content/uploads/2015/03/Append-Indicators.gif)
添加指示符到内容
*添加指示符到内容*
### 4. 根据扩展名、大小、时间和版本对目录内容排序。 ###
@ -110,16 +106,18 @@ ls命令的列出格式
# ls --sort=none
![Sort Listing of Content by Options](http://www.tecmint.com/wp-content/uploads/2015/03/Sort-Content-by-Extensions.gif)
通过选项对内容排序列出
### 5. 使用ls命令打印目录中各个内容的数字UID和GID。 ###
*通过选项对内容排序列出*
### 5. 使用ls命令打印目录中各个项的数字UID和GID。 ###
上面的环境可以通过使用带有-n标识的ls命令来实现。
# ls -n
![Print Listing of Content by UID and GID](http://www.tecmint.com/wp-content/uploads/2015/03/Print-UID-GID-of-Contents.gif)
通过UID和GID对打印内容列表
*通过UID和GID对打印内容列表*
### 6. 标准输出结果中打印目录内容中比默认指定的更多栏目。 ###
@ -132,20 +130,22 @@ ls命令的列出格式
# ls --width 150
![List Content Based on Window Sizes](http://www.tecmint.com/wp-content/uploads/2015/03/List-Content-By-More-Column.gif)
根据窗口大小列出内容
*根据窗口大小列出内容*
**注意** 你可以试验你可以给width标识传递什么值。
### 7. 通过ls命令为列出的目录内容手动指定的tab大小而不是默认的8。 ###
### 7. 通过ls命令为列出的目录内容手动指定的制表符大小而不是默认的8。 ###
# ls --tabsize=[value]
![List Content by Table Size](http://www.tecmint.com/wp-content/uploads/2015/03/List-Content-by-Table-Size.gif)
按表尺寸列出内容
**注意** 指定`[Value]=`的数值。
*按表尺寸列出内容*
到目前为止都讲完了。保持连线到Tecmint我们会推出下一篇文章。别忘了在下面的评论中为我们提供有价值的反馈。为我们点赞并分享帮我们推广。
**注意** 指定`[Value]`的数值。
到目前为止,都讲完了。保持连线,我们会推出下一篇文章。别忘了在下面的评论中为我们提供有价值的反馈。为我们点赞并分享,帮我们推广。
--------------------------------------------------------------------------------
@ -153,11 +153,11 @@ via: http://www.tecmint.com/linux-ls-command-tricks/
作者:[Avishek Kumar][a]
译者:[GOLinux](https://github.com/GOLinux)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.tecmint.com/author/avishek/
[1]:http://www.tecmint.com/15-basic-ls-command-examples-in-linux/
[2]:http://www.tecmint.com/ls-command-interview-questions/
[3]:http://www.tecmint.com/ls-interview-questions/
[1]:https://linux.cn/article-5109-1.html
[2]:https://linux.cn/article-5349-1.html
[3]:https://linux.cn/article-5350-1.html

View File

@ -6,7 +6,7 @@
### Monit是什么 ###
[Monit][3]是一个跨平台的用来监控Unix/linux系统比如Linux、BSD、OSX、Solaris的工具。Monit特别易于安装而且非常轻量级只有500KB大小并且不依赖任何第三方程序、插件或者库。然而Monit可以胜任全面监控、进程状态监控、文件系统变动监控、邮件通知和对核心服务的自定义回调等场景。易于安装、轻量级的实现以及强大的功能让Monit成为一个理想的后备监控工具。
[Monit][3]是一个跨平台的用来监控Unix/linux系统比如Linux、BSD、OSX、Solaris的工具。Monit特别易于安装而且非常轻量级只有500KB大小并且不依赖任何第三方程序、插件或者库。然而Monit可以胜任全面监控、进程状态监控、文件系统变动监控、邮件通知和对核心服务的自定义动作等场景。易于安装、轻量级的实现以及强大的功能让Monit成为一个理想的后备监控工具。
我已经在一些机器使用Monit几年了而且我对它的可靠性非常满意。甚至作为全面的监控系统对任何Linux系统管理员来说Monit也是非常有用和强大的。在这篇教程中我会展示如何在一个本地服务器部署Monit作为后备监控系统来监控常见的服务。在部署过程中我只会展示我们用到的部分。
@ -24,16 +24,16 @@ Fedora或者CentOS/RHEL
# yum install monit
Monit自带一个文档完善的配置文件其中包含了很多例子。主配置文件在/etc/monit.confFedora/CentOS/RHEL或者/etc/monit/monitrcDebian/Ubuntu/Mint。Monit配置文件有两部分“Global”全局和“Services”服务
Monit自带一个文档完善的配置文件其中包含了很多例子。主配置文件在/etc/monit.confFedora/CentOS/RHEL),或者/etc/monit/monitrcDebian/Ubuntu/Mint。Monit配置文件有两部分“Global”全局和“Services”服务
### Global Configuration: Web Status Page 全局配置Web状态页面。LCTT 译注:保留原文是因为和配置文件中的字段对应 ###
### Global Configuration: Web Status Page 全局配置Web状态页面 ###
Monit可以使用邮件服务来发送通知也可以使用HTTP/HTTPS页面来展示。我们先使用符合以下要求的web状态页面吧
Monit可以使用邮件服务来发送通知也可以使用HTTP/HTTPS页面来展示。我们先使用如下配置的web状态页面吧
- Monit监听1966端口。
- 对web状态页面的访问是通过SSL加密的。
- 使用monituser/romania作为用户名/口令登录。
- 只允许使用localhost、myhost.mydomain.ro和在局域网内部192.168.0.0/16访问。
- 只允许通过localhost、myhost.mydomain.ro和在局域网内部192.168.0.0/16访问。
- Monit使用pem格式的SSL证书。
之后的步骤我会使用一个基于Red Hat的系统。在基于Debian的系统中的步骤也是类似的。
@ -99,10 +99,10 @@ Monit可以使用邮件服务来发送通知也可以使用HTTP/HTTPS页面
我们必须定义“idfile”Monit守护进程的一个独一无二的ID文件以及“eventqueue”当monit的邮件因为SMTP或者网络故障发不出去邮件会暂存在这里以及确保/var/monit路径是存在的。然后使用下边的配置就可以了。
set idfile /var/monit/id
set eventqueue
set eventqueue
basedir /var/monit
### 测试Global Configuration全局配置 ###
### 测试全局配置 ###
现在“Global”部分就完成了。Monit配置文件看起来像这样
@ -163,11 +163,11 @@ Monit可以使用邮件服务来发送通知也可以使用HTTP/HTTPS页面
现在打开一个浏览器窗口,然后访问`https://<monit_host>:1966`。将`<monit_host>`替换成Monit所在机器的机器名或者IP地址。
如果你使用的是自签名的SSL证书你会在浏览器中看到一个警告信息。
如果你使用的是自签名的SSL证书你会在浏览器中看到一个警告信息。继续访问即可。
![](https://farm8.staticflickr.com/7596/16737206479_96b9f7dfdb_c.jpg)
你完成登录后,一定要看这个页面。
你完成登录后,就会看到这个页面。
![](https://farm8.staticflickr.com/7594/16303369973_6019482dea_c.jpg)
@ -209,7 +209,7 @@ Monit可以使用邮件服务来发送通知也可以使用HTTP/HTTPS页面
if failed port 22 protocol ssh then restart
if 5 restarts within 5 cycles then timeout
我们可以这样解释上述配置我们检查是否存在名为sshd的进程并且有一个保存pid的文件存在/var/run/sshd.pid。如果任何一个不存在我们就使用启动脚本重启sshd。我们检查是否有进程在监听22端口并且使用的是SSH协议。如果没有我们还是重启sshd。如果在最近的5个监控周期5x120秒至少重启5次了sshd就被认为是不能用的我们就不再检查了。
我们可以这样解释上述配置我们检查是否存在名为sshd的进程并且有一个保存pid的文件存在/var/run/sshd.pid。如果任何一个不存在我们就使用启动脚本重启sshd。我们检查是否有进程在监听22端口并且使用的是SSH协议。如果没有我们还是重启sshd。如果在最近的5个监控周期5x120秒至少重启5次了sshd就被认为是不能用的我们就不再检查了。
![](https://farm9.staticflickr.com/8685/16735725998_62c26a24bc_c.jpg)
@ -236,7 +236,7 @@ via: http://xmodulo.com/server-monitoring-system-monit.html
作者:[Iulian Murgulet][a]
译者:[goreliu](https://github.com/goreliu)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
@ -244,7 +244,7 @@ via: http://xmodulo.com/server-monitoring-system-monit.html
[1]:http://xmodulo.com/monitor-common-services-nagios.html
[2]:http://xmodulo.com/monitor-linux-servers-snmp-cacti.html
[3]:http://mmonit.com/monit/
[4]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html
[4]:https://linux.cn/article-2324-1.html
[5]:http://xmodulo.com/how-to-set-up-rpmforge-repoforge-repository-on-centos.html
[6]:http://xmodulo.com/mail-server-ubuntu-debian.html
[7]:http://mmonit.com/wiki/Monit/ConfigurationExamples

View File

@ -1,9 +1,11 @@
5个基于Linux命令行的文件下载和网站浏览工具
5 个基于Linux命令行的文件下载和网站浏览工具
================================================================================
GNU/Linux最冒险迷人的部分Linux命令行是非常强大的工具。命令行本身功能多样多种内建或者第三方的命令行应用使得Linux变得更加健壮和强大。Linux Shell支持多种不同类型的网络应用无论是BT下载软件专用下载器或者互联网冲浪。
Linux命令行是GNU/Linux中最神奇迷人的部分它是非常强大的工具。命令行本身功能多样多种内建或者第三方的命令行应用使得Linux变得更加健壮和强大。Linux Shell支持多种不同类型的网络应用无论是BT下载软件专用下载器或者互联网冲浪。
![命令行互联网工具](http://www.tecmint.com/wp-content/uploads/2014/02/Command-Line-Internet-Tools.jpg)
5个命令行互联网工具
*5个命令行互联网工具*
这里我们介绍了5个很好的命令行互联网工具它们非常有用也很容易上手。
@ -24,7 +26,8 @@ rTorrent是基于文本用C++编写追求高性能的Torrent客户端。
# rtorrent
![命令行torrent下载器](http://www.tecmint.com/wp-content/uploads/2014/02/rTorrent.jpeg)
rTorrent命令行工具
*rTorrent命令行工具*
#### rTorrent的功能 ####
@ -34,18 +37,18 @@ rTorrent命令行工具
- CTRL+ s 开始下载
- CTRL+ d 停止运行中的下载或者移除已完成的下载
- CTRL+ k 停止并关闭运行中的下载
- CTRL+ r 在上传/下载torrent之前进行Hash检查
- CTRL+ q 执行两次这个命令rTorrent会直接退出而不发送停止信号
- CTRL+ r 在上传/下载种子之前进行Hash检查
- CTRL+ q 执行两次这个命令rTorrent会直接退出而不发送停止信号
- Left Arrow Key 跳到上一屏幕
- Right Arrow Key 跳到下一屏幕
### 2. Wget ###
Wget是GNU项目的一部分名字由World Wide Web (WWW)衍生而来。Wget是用来递归下载离线查看本地服务器HTML文件一个很好的工具它可用于Windows Max以及Linux等大部分平台。Wget能通过HTTPHTTPS和FTP下载文件。另外能镜像整个网站支持代理浏览以及暂停/回复下载使得它更为有用。
Wget是GNU项目的一部分名字由World Wide Web (WWW)衍生而来。Wget是用来递归下载、离线查看本地服务器HTML文件一个很好的工具它可用于Windows Mac以及Linux等大部分平台。Wget能通过HTTPHTTPS和FTP下载文件。另外能镜像整个网站支持代理浏览以及暂停/回复下载使得它更为有用。
#### 安装Wget ####
由于是GNE项目的一部分Wget在大部分标准Linux发行版中都绑定发布不再需要独立下载安装。如果默认没有安装你也可以使用apt或者yum安装。
由于是GNU项目的一部分Wget捆绑在大部分标准Linux发行版中不再需要独立下载安装。如果默认没有安装你也可以使用apt或者yum安装。
# apt­-get install wget (基于 APT 的系统)
@ -70,13 +73,14 @@ Wget是GNU项目的一部分名字由World Wide Web (WWW)衍生而来。Wget
Wget是一个很棒的工具它允许在资源有限的机器上自定义或者过滤下载。这是镜像一个网站(Yahoo.com)的wget下载截图。
![Wget 下载文件](http://www.tecmint.com/wp-content/uploads/2014/02/Wget.jpeg)
Wget 命令行文件下载
要获取更多wget下载的例子可以阅读我们的文章[10个Wget下载命令例子][1]。
*Wget 命令行文件下载*
要获取更多wget下载的例子可以阅读我们的文章[Wget下载命令例子][1]。
### 3. cURL ###
cURL是在多种协议上传输数据的命令行工具。cURL是支持FTP, HTTP, FTPS, TFTP, TELNET, IMAP, POP3等协议的客户端应用。和其它相对比在支持LDAPPOP3方面cURL是和wget不同的简单下载器。cURL也很好的支持代理下载暂停下载以及恢复下载。
cURL是在多种协议上传输数据的命令行工具。cURL是支持FTP, HTTP, FTPS, TFTP, TELNET, IMAP, POP3等协议的客户端应用。cURL是一个不同于wget 的简单下载器和其它的相比它支持LDAPPOP3。cURL也很好的支持代理下载暂停下载以及恢复下载。
#### 安装cURL ####
@ -93,14 +97,16 @@ cURL的基本使用方法
# curl www.tecmint.com
![Curl 下载](http://www.tecmint.com/wp-content/uploads/2014/02/Curl.jpeg)
Curl 下载数据
*Curl 下载*
![Curl 下载数据](http://www.tecmint.com/wp-content/uploads/2014/02/Curl-2.jpeg)
Curl 下载
*Curl 下载*
### 4. w3m ###
W3m是GPL协议下发布的基于文本的web浏览器。W3m支持表格颜色SSL连接以及内联图像。W3m由于快速浏览而出名。
W3m是GPL协议下发布的基于文本的web浏览器。W3m支持表格颜色SSL连接以及内联图像。W3m快速浏览而出名。
#### 安装w3m ####
@ -117,11 +123,12 @@ W3m在大部分Linux发行版中也是默认可用的。如果不可用的话可
# w3m www.tecmint.com
![命令行浏览器](http://www.tecmint.com/wp-content/uploads/2014/02/w3m.jpeg)
基于文本的web浏览器w3m
*基于文本的web浏览器w3m*
### 5. Elinks ###
Elinks是基于文本给基于Unix和基于Unix的系统使用的免费web浏览器。Elinks支持 HTTPHTTP Cookies以及支持浏览Pery和Ruby脚本。也很好的支持基于标签的浏览。最棒的是它支持鼠标颜色显示以及支持一系列的协议例如HTTP, FTP, SMB, Ipv4 和 Ipv6。
Elinks是基于文本的免费浏览器用于Unix及基于Unix的系统。Elinks支持 HTTPHTTP Cookies以及支持浏览Perl和Ruby脚本LCTT 译注:应该是指 CGI。也很好的支持选项卡浏览。最棒的是它支持鼠标、彩色以及支持一系列的协议例如HTTP, FTP, SMB, Ipv4 和 Ipv6。
#### 安装Elinks ####
@ -138,7 +145,8 @@ Elinks的基本使用方法
# elinks www.tecmint.com
![命令行互联网浏览](http://www.tecmint.com/wp-content/uploads/2014/02/Elinks.jpeg)
Elinks命令行浏览互联网
*Elinks命令行浏览互联网*
就是这些了。有你们喜欢读的有趣的文章我会再次来到这里。到那时尽请关注并保持和Tecmint的联系别忘了在评论部分给我们你的宝贵的反馈。
@ -148,9 +156,9 @@ via: http://www.tecmint.com/linux-command-line-tools-for-downloading-files/
作者:[Avishek Kumar][a]
译者:[ictlyh](https://github.com/ictlyh)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.tecmint.com/author/avishek/
[1]:http://www.tecmint.com/10-wget-command-examples-in-linux/
[1]:https://linux.cn/article-4129-1.html

View File

@ -2,7 +2,7 @@ Quagga上使用验证加固BGP会话安全
================================================================================
BGP协议运行于TCP之上因而它也继承了TCP连接的所有漏洞。例如在一个BGP会话内攻击者可以冒充一个合法的BGP邻居然后说服另一端的BGP路由器共享路由信息给攻击者。在攻击者通告并向邻居路由注入伪造的路由时就会发生这个问题。毫无戒备的邻居路由器就会开始向攻击者发送通信实况实际上这些信息并没有去向任何地方仅仅只是被丢弃了。回到2008年YouTube实际上也[受害于][1]这样的BGP路由中毒并遭受了长达一个小时的视频服务大量中断。一个更加糟糕的情况是如果攻击者是个足够懂行的人他们可以伪装成一台透明路由器然后嗅探经过的通信以获取敏感数据。你可以想象这会造成深远的影响。
要保护活跃的BGP会话不受攻击许多服务提供商在BGP会话中使用[MD5校验和预共享密钥][2]。在受保护的BGP会话中一台发送包的BGP路由器通过使用预共享的密钥生成MD5散列值、部分IP和TCP头以及有效载。然后MD5散列作为一个TCP选项字段存储。在收到包后接受路由器用同样的方法使用预共享密钥生成它的MD5版本。它会将它的MD5散列和接收到的某个包的值进行对比以决定是否接受该包。对于一个攻击者而言几乎不可能猜测校验和或其密钥。对于BGP路由器而言它们能在消耗包的内容前确保每个包的合法性。
要保护活跃的BGP会话不受攻击许多服务提供商在BGP会话中使用[MD5校验和预共享密钥][2]。在受保护的BGP会话中一台发送包的BGP路由器通过使用预共享的密钥生成MD5散列值、部分IP和TCP头以及有效载。然后MD5散列作为一个TCP选项字段存储。在收到包后接受路由器用同样的方法使用预共享密钥生成它的MD5版本。它会将它的MD5散列和接收到的某个包的值进行对比以决定是否接受该包。对于一个攻击者而言几乎不可能猜测校验和或其密钥。对于BGP路由器而言它们能在使用包的内容前确保每个包的合法性。
在本教程中我们将为大家演示如何使用MD5校验和以及预共享密钥来加固两个邻居间的BGP会话的安全。
@ -13,7 +13,7 @@ BGP协议运行于TCP之上因而它也继承了TCP连接的所有漏洞
<table id="content">
<tbody><tr>
<td><b>路由器名称</b></td>
<td><b>AS</b></td>
<td><b>AS</b></td>
<td><b>IP地址</b></td>
</tr>
<tr>
@ -28,7 +28,7 @@ BGP协议运行于TCP之上因而它也继承了TCP连接的所有漏洞
</tr>
</tbody></table>
常用的Linux内核原生支持TCP的MD5选项用于IPv4和IPv6。因此如果你从全新的[Linux盒子][3]构建了Quagga路由器TCP的MD5功能会自动启用。剩下来的事情仅仅是配置Quagga以使用它的功能。但是如果你使用的是FreeBSD盒子或者为Quagga构建了一个自定义内核请确保内核开启了TCP的MD5支持Linux中的CONFIG_TCP_MD5SIG选项
常用的Linux内核原生支持IPv4和IPv6的TCP MD5选项。因此如果你从全新的[Linux机器][3]构建了一台Quagga路由器TCP的MD5功能会自动启用。剩下来的事情仅仅是配置Quagga以使用它的功能。但是如果你使用的是FreeBSD机器或者为Quagga构建了一个自定义内核请确保内核开启了TCP的MD5支持Linux中的CONFIG_TCP_MD5SIG选项
### 配置Router-A验证功能 ###
@ -43,7 +43,7 @@ BGP协议运行于TCP之上因而它也继承了TCP连接的所有漏洞
本例中使用的预共享密钥是xmodulo。很明显在生产环境中你需要选择一个更健壮的密钥。
**注意** 在Quagga中service password-encryption命令是想加密配置文件中所有明文密码登录密码。然而当我使用该命令时我注意到BGP配置中的预共享密钥仍然是明文的。我不确定这是否是Quagga的限制还是版本自身的问题。
**注意** 在Quagga中service password-encryption命令被用做加密配置文件中所有明文密码登录密码。然而当我使用该命令时我注意到BGP配置中的预共享密钥仍然是明文的。我不确定这是否是Quagga的限制还是版本自身的问题。
### 配置Router-B验证功能 ###
@ -58,15 +58,17 @@ BGP协议运行于TCP之上因而它也继承了TCP连接的所有漏洞
### 验证BGP会话 ###
如果一切配置正确那么BGP会话就会起来两台路由器应该能交换路由表。这时候TCP会话中的所有流出包都会携带一个MD5摘要的包内容和一个密钥而摘要信息会被另一端自动验证。
如果一切配置正确那么BGP会话就应该起来了两台路由器应该能交换路由表。这时候TCP会话中的所有流出包都会携带一个MD5摘要的包内容和一个密钥而摘要信息会被另一端自动验证。
我们可以像平时一样通过查看BGP的概要来验证活跃的BGP会话。MD5校验和验证在Quagga内部是透明的因此你在BGP级别是无法看到的。
我们可以像平时一样通过查看BGP的概要来验证活跃的BGP会话。MD5校验和验证在Quagga内部是透明的因此你在BGP级别是无法看到的。
![](https://farm8.staticflickr.com/7621/16837774368_e9ff66b370_c.jpg)
如果你想要测试BGP验证你可以配置一个邻居路由设置其密码为空或者故意使用错误的预共享密钥然后查看发生了什么。你也可以使用包嗅探器像tcpdump或者Wireshark等来分析通过BGP会话的包。例如带有“-M <secret>”选项的tcpdump将验证TCP选项字段的MD5摘要。
小结之在本教程中我们演示了怎样简单地加固两台路由间的BGP会话安全。相对于其它协议而言配置过程非常简明。强烈推荐你加固BGP会话安全尤其是当你用另一个AS配置BGP会话的时候。预共享密钥也应该安全地保存。
###小结###
在本教程中我们演示了怎样简单地加固两台路由间的BGP会话安全。相对于其它协议而言配置过程非常简明。强烈推荐你加固BGP会话安全尤其是当你用另一个AS配置BGP会话的时候。预共享密钥也应该安全地保存。
--------------------------------------------------------------------------------
@ -74,11 +76,11 @@ via: http://xmodulo.com/bgp-authentication-quagga.html
作者:[Sarmed Rahman][a]
译者:[GOLinux](https://github.com/GOLinux)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://xmodulo.com/author/sarmed
[1]:http://research.dyn.com/2008/02/pakistan-hijacks-youtube-1/
[2]:http://tools.ietf.org/html/rfc2385
[3]:http://xmodulo.com/centos-bgp-router-quagga.html
[3]:https://linux.cn/article-4232-1.html

View File

@ -1,9 +1,8 @@
sshuttle - 一个使用ssh的基于VPN的透明代理
sshuttle一个使用ssh的基于VPN的透明代理
================================================================================
sshuttle允许你通过ssh创建一条从你电脑连接到任何远程服务器的VPN连接只要你的服务器支持python2.3 或则更高的版本, 你必须有本机的root权限但是你可以在服务端有普通账户即可。
你可以在一台机器上同时运行多次sshuttle来连接到不同的服务器上这样你就可以一次使用多个VPN sshuttle可以转发你子网所有流量到VPN中。
sshuttle 允许你通过 ssh 创建一条从你电脑连接到任何远程服务器的 VPN 连接,只要你的服务器支持 python2.3 或则更高的版本。你必须有本机的 root 权限,但是你可以在服务端有普通账户即可。
你可以在一台机器上同时运行多次 sshuttle 来连接到不同的服务器上,这样你就可以同时使用多个 VPN sshuttle可以转发你子网中所有流量到VPN中。
### 在Ubuntu中安装sshuttle ###
@ -17,7 +16,7 @@ sshuttle允许你通过ssh创建一条从你电脑连接到任何远程服务器
sshuttle [options...] [-r [username@]sshserver[:port]] [subnets]
#### Option 细节 ####
#### 选项细节 ####
-r, —remote=[username@]sshserver[:port]
@ -29,9 +28,9 @@ sshuttle允许你通过ssh创建一条从你电脑连接到任何远程服务器
sudo sshuttle -r username@sshserver 0.0.0.0/0 -vv
当开始后sshuttle会创建一个ssh会话到通过-r指定的服务器。如果-r被忽略了,它会在本地运行客户端和服务端,这个有时会在测试时有用。
当开始后sshuttle会创建一个ssh会话到由-r指定的服务器。如果-r被丢了,它会在本地运行客户端和服务端,这个有时会在测试时有用。
连接到远程服务器后sshuttle会上传它的python源码到远程服务器并执行。那么你就不需要在远程服务器上安装sshuttle并且客户端和服务器端间不会存在sshuttle版本冲突。
连接到远程服务器后sshuttle会上传它的python源码到远程服务器并执行。所以你就不需要在远程服务器上安装sshuttle并且客户端和服务器端间不会存在sshuttle版本冲突。
#### 手册中的更多例子 ####
@ -86,7 +85,7 @@ via: http://www.ubuntugeek.com/sshuttle-a-transparent-proxy-based-vpn-using-ssh.
作者:[ruchi][a]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,21 +1,16 @@
Translating by H-mudcup
Synfig Studio 1.0 —— 开源动画动真格的了
Synfig Studio 1.0:开源动画动真格的了
================================================================================
![](http://www.omgubuntu.co.uk/wp-content/uploads/2015/04/synfig-free-animations-750x467.jpg)
**现在可以下载 Synfig Studio 这个自由、开源的2D动画软件的全新版本了。 **
第一次发行这个跨平台的软件一年以后Synfig Studio 1.0 带着一套全新改和改进过的功能,实现它所承诺的“创造电影级别的动画的产业级解决方案”。
这个跨平台的软件首次发行一年之后Synfig Studio 1.0 带着一套全新改进过的功能,实现它所承诺的“创造电影级的动画的工业级解决方案”。
在众多功能之上的是一个改进过的用户界面,据工程开发者说那是个用起来‘更简单’、‘更直观’的界面。客户端添加了新的**单窗口模式**,让界面更整洁,而且**为了使用最新的 GTK3 库而被**。
在众多功能之上的是一个改进过的用户界面,据项目开发者说那是个用起来‘更简单’、‘更直观’的界面。客户端添加了新的**单窗口模式**,让界面更整洁,而且**使用最新的 GTK3 库重制**。
在功能方面有几个值得注意的变化,包括新加的全功能骨骼系统。
这套**关节和转轴的‘骨骼’构架**非常适合2D剪纸动画再配上这个版本新加的复杂的变形控制系统或是 Synfig 受欢迎的‘关键帧自动插入’(阅读:画面与画面间的变形)应该会变得非常有效率的。
youtube视频
<iframe width="750" height="422" frameborder="0" allowfullscreen="" src="https://www.youtube.com/embed/M8zW1qCq8ng?feature=oembed"></iframe>
这套**关节和转轴的‘骨骼’构架**非常适合2D剪纸动画再配上这个版本新加的复杂的变形控制系统或是 Synfig 受欢迎的关键帧自动插入帧到帧之间的变形应该会变得非常有效率的。youtube视频 https://www.youtube.com/M8zW1qCq8ng
新的无损剪切工具,摩擦力效果和对逐帧位图动画的支持,可能会有助于释放开源动画师们的创造力,更别说新加的用于同步动画的时间线和声音的声效层!
@ -23,18 +18,18 @@ Synfig Studio 1.0 —— 开源动画动真格的了
Synfig Studio 并不是任何人都能用的工具套件,这最新发行版的最新一批改进应该能吸引一些动画制作者试一试这个软件。
If you want to find out what open-source animation software is like for yourself, you can grab an installer for Ubuntu for the latest release direct from the projects page using the links below. 如果你想看看开源动画制作软件是什么样的,你可以通过下面的链接直接从工程的 Sourceforge 页下载一个适用于 Ubuntu 的最新版本的安装器。
如果你想看看开源动画制作软件是什么样的,你可以通过下面的链接直接从工程的 Sourceforge 页下载一个适用于 Ubuntu 的最新版本的安装器。
- [Download Synfig 1.0 (64bit) .deb Installer][1]
- [Download Synfig 1.0 (32bit) .deb Installer][2]
- [下载 Synfig 1.0 (64bit) .deb 安装器][1]
- [下载 Synfig 1.0 (32bit) .deb 安装器][2]
--------------------------------------------------------------------------------
via: http://www.omgubuntu.co.uk/2015/04/synfig-studio-new-release-features
作者:[oey-Elijah Sneddon][a]
作者:[Joey-Elijah Sneddon][a]
译者:[H-mudcup](https://github.com/H-mudcup)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

Some files were not shown because too many files have changed in this diff Show More