Linux:关于Linux防火墙'iptables'的面试问答

Nishita Agarwal是Tecmint的用户,她将分享关于她刚刚经历的一家公司(印度的一家私人公司Pune)的面试经验。在面试中她被问及许多不同的问题,但她是iptables方面的专家,因此她想分享这些关于iptables的问题和相应的答案给那些以后可能会进行相关面试的人。

Linux:关于Linux防火墙'iptables'的面试问答
Linux:关于Linux防火墙’iptables’的面试问答

所有的问题和相应的答案都基于Nishita Agarwal的记忆并经过了重写。

“嗨,朋友!我叫Nishita Agarwal。我已经取得了理学学士学位,我的专业集中在UNIX和它的变种(BSD,Linux)。它们一直深深的吸引着我。我在存储方面有1年多的经验。我正在寻求职业上的变化,并将供职于印度的Pune公司。”

下面是我在面试中被问到的问题的集合。我已经把我记忆中有关iptables的问题和它们的答案记录了下来。希望这会对您未来的面试有所帮助。

1. 你听说过Linux下面的iptables和Firewalld么?知不知道它们是什么,是用来干什么的?

答案 : iptables和Firewalld我都知道,并且我已经使用iptables好一段时间了。iptables主要由C语言写成,并且以GNU GPL许可证发布。它是从系统管理员的角度写的,最新的稳定版是iptables 1.4.21。iptables通常被用作类UNIX系统中的防火墙,更准确的说,可以称为iptables/netfilter。管理员通过终端/GUI工具与iptables打交道,来添加和定义防火墙规则到预定义的表中。Netfilter是内核中的一个模块,它执行包过滤的任务。

Firewalld是RHEL/CentOS 7(也许还有其他发行版,但我不太清楚)中最新的过滤规则的实现。它已经取代了iptables接口,并与netfilter相连接。

2. 你用过一些iptables的GUI或命令行工具么?

答案 : 虽然我既用过GUI工具,比如与Webmin结合的Shorewall;以及直接通过终端访问iptables,但我必须承认通过Linux终端直接访问iptables能给予用户更高级的灵活性、以及对其背后工作更好的理解的能力。GUI适合初级管理员,而终端适合有经验的管理员。

3. 那么iptables和firewalld的基本区别是什么呢?

答案 : iptables和firewalld都有着同样的目的(包过滤),但它们使用不同的方式。iptables与firewalld不同,在每次发生更改时都刷新整个规则集。通常iptables配置文件位于‘/etc/sysconfig/iptables‘,而firewalld的配置文件位于‘/etc/firewalld/‘。firewalld的配置文件是一组XML文件。以XML为基础进行配置的firewalld比iptables的配置更加容易,但是两者都可以完成同样的任务。例如,firewalld可以在自己的命令行界面以及基于XML的配置文件下使用iptables。

4. 如果有机会的话,你会在你所有的服务器上用firewalld替换iptables么?

答案 : 我对iptables很熟悉,它也工作的很好。如果没有任何需求需要firewalld的动态特性,那么没有理由把所有的配置都从iptables移动到firewalld。通常情况下,目前为止,我还没有看到iptables造成什么麻烦。IT技术的通用准则也说道“为什么要修一件没有坏的东西呢?”。上面是我自己的想法,但如果组织愿意用firewalld替换iptables的话,我不介意。

5. 你看上去对iptables很有信心,巧的是,我们的服务器也在使用iptables。

iptables使用的表有哪些?请简要的描述iptables使用的表以及它们所支持的链。

答案 : 谢谢您的赞赏。至于您问的问题,iptables使用的表有四个,它们是:

  • Nat 表
  • Mangle 表
  • Filter 表
  • Raw 表

Nat表 : Nat表主要用于网络地址转换。根据表中的每一条规则修改网络包的IP地址。流中的包仅遍历一遍Nat表。例如,如果一个通过某个接口的包被修饰(修改了IP地址),该流中其余的包将不再遍历这个表。通常不建议在这个表中进行过滤,由NAT表支持的链称为PREROUTING 链,POSTROUTING 链和OUTPUT 链。

Mangle表 : 正如它的名字一样,这个表用于校正网络包。它用来对特殊的包进行修改。它能够修改不同包的头部和内容。Mangle表不能用于地址伪装。支持的链包括PREROUTING 链,OUTPUT 链,Forward 链,Input 链和POSTROUTING 链。

Filter表 : Filter表是iptables中使用的默认表,它用来过滤网络包。如果没有定义任何规则,Filter表则被当作默认的表,并且基于它来过滤。支持的链有INPUT 链,OUTPUT 链,FORWARD 链。

Raw表 : Raw表在我们想要配置之前被豁免的包时被使用。它支持PREROUTING 链和OUTPUT 链。

6. 简要谈谈什么是iptables中的目标值(能被指定为目标),他们有什么用

答案 : 下面是在iptables中可以指定为目标的值:

  • ACCEPT : 接受包
  • QUEUE : 将包传递到用户空间 (应用程序和驱动所在的地方)
  • DROP : 丢弃包
  • RETURN : 将控制权交回调用的链并且为当前链中的包停止执行下一调用规则

7. 让我们来谈谈iptables技术方面的东西,我的意思是说实际使用方面

你怎么检测在CentOS中安装iptables时需要的iptables的rpm?

答案 : iptables已经被默认安装在CentOS中,我们不需要单独安装它。但可以这样检测rpm:

# rpm -qa iptables

iptables-1.4.21-13.el7.x86_64

如果您需要安装它,您可以用yum来安装。

# yum install iptables-services

8. 怎样检测并且确保iptables服务正在运行?

答案 : 您可以在终端中运行下面的命令来检测iptables的状态。

# service status iptables           [On CentOS 6/5]
# systemctl status iptables         [On CentOS 7]

如果iptables没有在运行,可以使用下面的语句

---------------- 在CentOS 6/5下 ----------------
# chkconfig --level 35 iptables on
# service iptables start

---------------- 在CentOS 7下 ----------------
# systemctl enable iptables
# systemctl start iptables

我们还可以检测iptables的模块是否被加载:

# lsmod | grep ip_tables

9. 你怎么检查iptables中当前定义的规则呢?

答案 : 当前的规则可以简单的用下面的命令查看:

# iptables -L

示例输出

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

10. 你怎样刷新所有的iptables规则或者特定的链呢?

答案 : 您可以使用下面的命令来刷新一个特定的链。

# iptables --flush OUTPUT

要刷新所有的规则,可以用:

# iptables --flush

11. 请在iptables中添加一条规则,接受所有从一个信任的IP地址(例如,192.168.0.7)过来的包。

答案 : 上面的场景可以通过运行下面的命令来完成。

# iptables -A INPUT -s 192.168.0.7 -j ACCEPT

我们还可以在源IP中使用标准的斜线和子网掩码:

# iptables -A INPUT -s 192.168.0.7/24 -j ACCEPT
# iptables -A INPUT -s 192.168.0.7/255.255.255.0 -j ACCEPT

12. 怎样在iptables中添加规则以ACCEPT,REJECT,DENY和DROP ssh的服务?

答案 : 但愿ssh运行在22端口,那也是ssh的默认端口,我们可以在iptables中添加规则来ACCEPT ssh的tcp包(在22号端口上)。

# iptables -A INPUT -s -p tcp --dport 22 -j ACCEPT

REJECT ssh服务(22号端口)的tcp包。

# iptables -A INPUT -s -p tcp --dport 22 -j REJECT

DENY ssh服务(22号端口)的tcp包。

# iptables -A INPUT -s -p tcp --dport 22 -j DENY

DROP ssh服务(22号端口)的tcp包。

# iptables -A INPUT -s -p tcp --dport 22 -j DROP

13. 让我给你另一个场景,假如有一台电脑的本地IP地址是192.168.0.6。你需要封锁在21、22、23和80号端口上的连接,你会怎么做?

答案 : 这时,我所需要的就是在iptables中使用‘multiport‘选项,并将要封锁的端口号跟在它后面。上面的场景可以用下面的一条语句搞定:

# iptables -A INPUT -s 192.168.0.6 -p tcp -m multiport --dport 22,23,80,8080 -j DROP

可以用下面的语句查看写入的规则。

# iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
DROP       tcp  --  192.168.0.6          anywhere             multiport dports ssh,telnet,http,webcache

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

面试官 : 好了,我问的就是这些。你是一个很有价值的雇员,我们不会错过你的。我将会向HR推荐你的名字。如果你有什么问题,请问我。

作为一个候选人我不愿不断的问将来要做的项目的事以及公司里其他的事,这样会打断愉快的对话。更不用说HR轮会不会比较难,总之,我获得了机会。

同时我要感谢Avishek和Ravi(我的朋友)花时间帮我整理我的面试。

朋友!如果您有过类似的面试,并且愿意与数百万Tecmint读者一起分享您的面试经历,请将您的问题和答案发送到admin@tecmint.com

谢谢!保持联系。如果我能更好的回答我上面的问题的话,请记得告诉我。


via: http://www.tecmint.com/linux-firewall-iptables-interview-questions-and-answers/

作者:Avishek Kumar 译者:wwy-hust 校对:wxy

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

来源:https://linux.cn/article-5948-1.html

在 Linux 命令行中使用和执行 PHP 代码(一)

PHP是一个开源服务器端脚本语言,最初这三个字母代表的是“Personal Home Page”,而现在则代表的是“PHP:Hypertext Preprocessor”,它是个递归首字母缩写。它是一个跨平台脚本语言,深受C、C++和Java的影响。

在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

在 Linux 命令行中运行 PHP 代码

PHP的语法和C、Java以及带有一些PHP特性的Perl变成语言中的语法十分相似,它当下大约正被2.6亿个网站所使用,当前最新的稳定版本是PHP版本5.6.10。

PHP是HTML的嵌入脚本,它便于开发人员快速写出动态生成的页面。PHP主要用于服务器端(而Javascript则用于客户端)以通过HTTP生成动态网页,然而,当你知道可以在Linux终端中不需要网页浏览器来执行PHP时,你或许会大为惊讶。

本文将阐述PHP脚本语言的命令行方面。

1. 在安装完PHP和Apache2后,我们需要安装PHP命令行解释器。

# apt-get install php5-cli          [Debian 及类似系统]
# yum install php-cli               [CentOS 及类似系统]

接下来我们通常要做的是,在/var/www/html(这是 Apache2 在大多数发行版中的工作目录)这个位置创建一个内容为 ,名为 infophp.php 的文件来测试(PHP是否安装正确),执行以下命令即可。

# echo '' > /var/www/html/infophp.php

然后,将浏览器访问 http://127.0.0.1/infophp.php ,这将会在网络浏览器中打开该文件。

在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

检查PHP信息

不需要任何浏览器,在Linux终端中也可以获得相同的结果。在Linux命令行中执行/var/www/html/infophp.php,如:

# php -f /var/www/html/infophp.php
在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

从命令行检查PHP信息

由于输出结果太大,我们可以通过管道将上述输出结果输送给 less 命令,这样就可以一次输出一屏了,命令如下:

# php -f /var/www/html/infophp.php | less
在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

检查所有PHP信息

这里,‘-f‘选项解析并执行命令后跟随的文件。

2. 我们可以直接在Linux命令行使用phpinfo()这个十分有价值的调试工具而不需要从文件来调用,只需执行以下命令:

# php -r 'phpinfo();'
在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

PHP调试工具

这里,‘-r‘ 选项会让PHP代码在Linux终端中不带<>标记直接执行。

3. 以交互模式运行PHP并做一些数学运算。这里,‘-a‘ 选项用于以交互模式运行PHP。

# php -a

Interactive shell

php > echo 2+3;
5
php > echo 9-6;
3
php > echo 5*4;
20
php > echo 12/3;
4
php > echo 12/5;
2.4
php > echo 2+3-1;
4
php > echo 2+3-1*3;
2
php > exit

输入 ‘exit‘ 或者按下 ‘ctrl+c‘ 来关闭PHP交互模式。

在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

启用PHP交互模式

4. 你可以仅仅将PHP脚本作为shell脚本来运行。首先,创建在你当前工作目录中创建一个PHP样例脚本。

# echo -e '#!/usr/bin/phpn' > phpscript.php

注意,我们在该PHP脚本的第一行使用#!/usr/bin/php,就像在shell脚本中那样(/bin/bash)。第一行的#!/usr/bin/php告诉Linux命令行用 PHP 解释器来解析该脚本文件。

其次,让该脚本可执行:

# chmod 755 phpscript.php

接着来运行它,

# ./phpscript.php

5. 你可以完全靠自己通过交互shell来创建简单函数,这你一定会被惊到了。下面是循序渐进的指南。

开启PHP交互模式。

# php -a

创建一个函数,将它命名为 addition。同时,声明两个变量 $a$b

php > function addition ($a, $b)

使用花括号来在其间为该函数定义规则。

php > {

定义规则。这里,该规则讲的是添加这两个变量。

php { echo $a + $b;

所有规则定义完毕,通过闭合花括号来封装规则。

php {}

测试函数,添加数字4和3,命令如下:

php > var_dump (addition(4,3));

样例输出

7NULL

你可以运行以下代码来执行该函数,你可以测试不同的值,你想来多少次都行。将里头的 a 和 b 替换成你自己的值。

php > var_dump (addition(a,b));

php > var_dump (addition(9,3.3));

样例输出

12.3NULL
在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

创建PHP函数

你可以一直运行该函数,直至退出交互模式(ctrl+z)。同时,你也应该注意到了,上面输出结果中返回的数据类型为 NULL。这个问题可以通过要求 php 交互 shell用 return 代替 echo 返回结果来修复。

只需要在上面的函数的中 ‘echo‘ 声明用 ‘return‘ 来替换

替换

php { echo $a + $b;

php { return $a + $b;

剩下的东西和原理仍然一样。

这里是一个样例,在该样例的输出结果中返回了正确的数据类型。

在 Linux 命令行中使用和执行 PHP 代码(一)
在 Linux 命令行中使用和执行 PHP 代码(一)

PHP函数

永远都记住,用户定义的函数不会从一个shell会话保留到下一个shell会话,因此,一旦你退出交互shell,它就会丢失了。

希望你喜欢此次教程。保持连线,你会获得更多此类文章。保持关注,保持健康。请在下面的评论中为我们提供有价值的反馈。点赞并分享,帮助我们扩散。

还请阅读: 12个Linux终端中有用的的PHP命令行用法——第二部分


via: http://www.tecmint.com/run-php-codes-from-linux-commandline/

作者:Avishek Kumar 译者:GOLinux 校对:wxy

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

来源:https://linux.cn/article-5906-1.html

Linux:Linux 内核 4.2 RC 获史上最大更新量

Linux内核即将发布4.2版RC版(候选版),Linux之父Linus Torvalds表示,如果单从程序代码改变的数量来看的话,4.2的RC版应该是有史以来最大一次更新——总共新增了100万行程序代码,同时删除了25万行程序代码。远超越了过去的冠军Linux 3.11RC版本。相比而言,Linux 4.0版本只是小幅更新,而4.1版本修改的程序代码数量是一般平均值。

Linux:Linux 内核 4.2  RC  获史上最大更新量
Linux:Linux 内核 4.2 RC 获史上最大更新量

Linux内核4.2 RC程序代码新增百万行 删25万行

Linus Torvalds解释称,新版本的100万行程序代码中41万行来自支持AMD新的GPU暂存器的描述表头文件(description header),而新的AMD GPU驱动程序也占了8万行左右的程序代码。也就是说,仅这部分就已经占去新版本近一半的程序代码。

Linux 4.2新版核心将支持Renesas的H8/300架构处理器,不过Linus Torvalds表示,与ARM架构支持的更新相比,H8/300架构属于较小的更新。

 

来源:http://os.yesky.com/475/76933975.shtml

Linux:如何在 Linux 上使用 x2go 设置远程桌面

由于一切都迁移到了云上,作为提高职员生产力的一种方式,虚拟远程桌面在工业中越来越流行。尤其对于那些需要在多个地方和设备之间不停漫游的人,远程桌面可以让他们和工作环境保持无缝连接。远程桌面对于雇主同样有吸引力,可以在工作环境中提高敏捷性和灵活性,由于硬件整合、桌面安全加固等原因降低 IT 花费。

在 Linux 世界中,理所当然设置远程桌面有很多选择,支持许多协议(例如 RDP、RFB、NX) 和服务器/客户端实现(例如 TigerVNC、RealVNC、FreeNX、x2go、X11vnc、TeamViewer 等等)。

这当中有个出色的产品叫做 X2Go,它是一个基于 NX(译者注:通过计算机网络显示远程桌面环境的一种技术,可参考 Wiki)的远程桌面服务器和客户端的开源(GPLv2)实现。在这个教程中,我会介绍 如何为 Linux VPS 使用 X2Go 设置远程桌面环境

X2Go 是什么?

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

X2Go 的历史要追溯到 NoMachine 的 NX 技术。NX 远程桌面协议的设计目的是通过利用主动压缩和缓存解决低带宽和高延迟的网络连接问题。后来,NX 转为闭源,但 NX 库还是采用 GPL 协议。这导致出现了多种基于 NX 的远程桌面解决方案开源实现,X2Go 就是其中之一。

和其它解决方案例如 VNC 相比,X2Go 有哪些好处呢? X2Go 继承了 NX 技术的所有高级功能,很自然能在慢速网络连接上良好工作。另外,由于它内置的基于 SSH 的加密技术,X2Go 保持了确保安全的良好业绩记录。不再需要手动设置 SSH 隧道 。X2Go 默认支持音频,这意味着远程桌面的音乐播放可以通过网络传送,并进入本地扬声器。在易用性方面,远程桌面上运行的应用程序可以在你的本地桌面中以一个独立窗口无缝呈现,会给你造成一种应用程序实际上在你本地桌面运行的错觉。正如你看到的,这些都是一些基于 VNC 的解决方案所缺少的强大功能

X2GO 的桌面环境兼容性

和其它远程桌面服务器一样,X2Go 服务器也有一些已知的兼容性问题。像 KDE 3/4、Xfce、MATE 和 LXDE 是对 X2Go 服务器最友好的桌面环境。但是,用其它桌面管理器效果可能有所不同。例如,已知 GNOME 3 之后的版本、KDE 5、Unity 和 X2Go 并不兼容。如果你的远程主机的桌面管理器和 X2Go 兼容,你可以继续以下的教程。

在 Linux 上安装 X2Go 服务器

X2Go 由远程桌面服务器和客户端组件组成。让我们首先安装 X2Go 服务器。我假设你已经有一个和 X2Go 兼容的桌面管理器并且在远程主机上运行,我们会安装 X2Go 服务器到该远程主机。

注意系统启动后 X2Go 服务器组件没有需要单独启动的服务。你只需要保证开启了 SSH 服务并在正常运行。

Ubuntu 或 Linux Mint:

配置 X2Go PPA 库。对于 Ubuntu 14.04 以及更高版本,有可用的 X2Go PPA。

$ sudo add-apt-repository ppa:x2go/stable
$ sudo apt-get update
$ sudo apt-get install x2goserver x2goserver-xsession

Debian (Wheezy):

$ sudo apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ sudo sh -c "echo deb http://packages.x2go.org/debian wheezy main > /etc/apt/sources.list.d/x2go.list"
$ sudo sh -c "echo deb-src http://packages.x2go.org/debian wheezy main >> /etc/apt/sources.list.d/x2go.list"
$ sudo apt-get update
$ sudo apt-get install x2goserver x2goserver-xsession

Fedora:

$ sudo yum install x2goserver x2goserver-xsession

CentOS/RHEL:

首先启用 EPEL 库 然后运行:

$ sudo yum install x2goserver x2goserver-xsession

在 Linux 上安装 X2Go 客户端

在将会连接到远程桌面的本地主机上,安装以下命令安装 X2Go 客户端。

Ubuntu 或 Linux Mint:

配置 X2Go PPA 库。对于 Ubuntu 14.04 以及更高版本,有可用的 X2Go PPA。

$ sudo add-apt-repository ppa:x2go/stable
$ sudo apt-get update
$ sudo apt-get install x2goclient

Debian (Wheezy):

$ sudo apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ sudo sh -c "echo deb http://packages.x2go.org/debian wheezy main > /etc/apt/sources.list.d/x2go.list"
$ sudo sh -c "echo deb-src http://packages.x2go.org/debian wheezy main >> /etc/apt/sources.list.d/x2go.list"
$ sudo apt-get update
$ sudo apt-get install x2goclient

Fedora:

$ sudo yum install x2goclient

CentOS/RHEL:

首先启用 EPEL 库 ,然后运行:

$ sudo yum install x2goclient

用 X2Go 客户端连接到远程桌面

现在可以连接到远程桌面了。在本地主机上,只需运行以下命令或者使用桌面启动器启动 X2Go 客户端。

$ x2goclient

输入远程主机的 IP 地址和 SSH 用户名称。同时,指定会话类型(例如,远程主机的桌面管理器)。

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

如果需要的话,你可以自定义其它东西(通过点击其它的标签),例如连接速度、压缩、屏幕分辨率等等。

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

当你初始化一个远程桌面连接的时候,会要求你登录。输入你的 SSH 登录名和密码。

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

成功登陆后,你会看到远程桌面屏幕。

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

如果你想测试 X2Go 的无缝窗口功能,选择 “Single application” 会话类型,然后指定远处主机上可执行文件的路径。在该例子中,我选择远程 KDE 主机上的 Dolphin 文件管理器。

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

你成功连接后,你会在本地桌面上看到一个远程应用窗口,而不是完整的远程桌面屏幕。

Linux:如何在 Linux 上使用 x2go 设置远程桌面
Linux:如何在 Linux 上使用 x2go 设置远程桌面

总结

在这篇教程中,我介绍了如何在 Linux VPS 实例上设置 X2Go 远程桌面。正如你所看到的,整个设置过程都非常简单(如果你使用一个合适的桌面环境的话)。尽管对于特定桌面仍有问题,X2Go 是一个安全、功能丰富、快速并且免费的远程桌面解决方案。

X2Go 的什么功能最吸引你?欢迎分享你的观点。


via: http://xmodulo.com/x2go-remote-desktop-linux.html

作者:Dan Nanni 译者:ictlyh 校对:wxy

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

来源:https://linux.cn/article-5708-1.html

Linux:5 款最好的 Linux 桌面发行版

2011 年已经过半,在前面的这一年半以来,Linux 桌面发行版发生了很多的事情,各大发行版争先恐后的发行了新的版本,Linux 桌面发行版的环境https://dn-linuxcn.qbox.me/data/attachment/album/201106/29/1618405f3x236pz2vv31v4.jpg已经发生了很多改变。这里我给大家推荐我认为的 5 款 Linux 桌面发行版。我不记得我是从什么时侯开始使用 Linux 的了,已经是很早的时侯了。我是一个从 Unix 桌面转向 Linux 桌面的用户,从最开始的 Unix 的 Bourne shell 字符界面到图形桌面,从 Open Deathtrap 到 Solaris’s Looking Glass。在过去的十多年间,我已经使用了几乎所有的重要的 Linux 桌面版本的发行版,我相信我介绍给大家的这些发行版应该具有一定的代表性,当然了,在其他作者写的类似的推荐 Linux 桌面发行版的文章中,这些版本的 Linux 桌面发行版也上榜率非常高,可能您已经砍过类似的很多的文章了。

我用 Linux 桌面发行版并不是因为它是开源的或者因为它和 Mac 和 Micorosoft 是竞争关系,我使用它是因为它更加适合作为一个技术工作者、作为一个实用主义者的使用。不过,从开源的角度来说,我觉得总比使用一个盗版更能让我心理上宽慰一些,不过如果需要做一个大型项目,很多时侯我还是会选择商业软件,这样会更有保障一些。这就是为什么我非常艰难的选择 Adobe Flash Player 作为 Flash 视频播放器,因为就目前的情况来看,它确实是更好的工具,同时我也使用商业的音视频编辑器。因为使用其他开源的编码格式如 Ogg Theora ,这是一个非常庞大的过程,并且会让其他播放者感到困扰,或许 HTML5 的解决方案会解决这些问题,但是我们现在还需要等待。

我非常喜欢开源操作系统,他们很容易使用,也让你更了解计算机的运行机制,这样我就可以让他们更符合我的工作需要,一般来说,我喜欢 KDE 和 GNOME 作为我的桌面环境。

下面就来看看我喜欢的 Linux 桌面发行版列表吧:

5) SystemRescueCD

这第一个呢,它本身并不是一个 Linux 桌面环境。而我在这里提到他是因为不论你使用那种桌面,你都有可能会需要到它。我建议我们每个人都有一份 SystemRescueCD 。SystemRescueCD 是一个可以从 CD-ROM 、USB 启动的 Linux 系统,它的作用是在我们的系统发生故障的时侯,可以用它来修复系统并且保护我们的数据。它的磁盘和文件系统修复工具能让硬盘起死回生。

它几乎支持所有的文件系统,包括 Linux 、Unix 、Windows 文件系统。我还没有遇到过只要硬盘还能转而它读取不出数据的情况。我已经成功的从 Windows 系统中获取了引导区的数据和通常我们认为硬盘已经报废的硬盘的数据。

这不只是一个零时救急工具,作为一个技术玩家,我们一定要有一份这个版本的 Linux 发行版。

4) OpenSUSE 11.4

https://dn-linuxcn.qbox.me/data/attachment/album/201106/29/161844u4fmqj3aj7j9ga73.png

我很爱使用的 OpenSUSE,我非常希望我能说我爱 OpenSUSE 11.4 ,但是我不能。哈。我最喜欢它的 KDE 4.6 接口。

我不是一个纯粹的 OpenSUSE 桌面粉丝,我更喜欢用它来作为服务器操作系统。虽然说作为服务器操作系统 Red Hat Enterprise Linux (RHEL) 和 CentOS 可能在服务器方面的表现会更加抢眼一些,但是 OpenSUSE 对于管理服务器上的软件,升级补丁方面的方法更加让我喜欢。所以我在作为 Web 服务器和其他对外访问的服务器上使用 Red Hat Enterprise Linux (RHEL) 和 CentOS ,但是我在所有的内部网上都使用 OpenSUSE Linux 服务器。

3) MEPIS 11

https://dn-linuxcn.qbox.me/data/attachment/album/201106/29/161850ax7ghi5pzmzvkcop.png

一直以来,我对 MEPIS 都情有独钟。它是一份基于 Debina 的发行版,它使用 KDE 桌面。我思考了很长时间,最后我找出我对它情有独钟的原因,那就是——它从来没有给我添过任何麻烦。在使用其他版本的 Linux 桌面发行版的时侯,你总会遇到一些问题,而在使用 MEPIS 的时侯,我没有遇到过我解决不了的问题。我越来越认为,在各个 Linux 桌面发行版都越来越稳定的趋势下,MEPIS 仍然是最最稳定的一个。

唯一让我不能把它排在我推荐的 Linux 桌面发行版第一位的原因是因为他是由一个人发起的发行版。一个人制作的发行版意味着这个发行版非常有个性,同时意味着如果您是一个经验丰富的 Linux 用户,那么您可能会非常喜欢它,也能管理它的方方面面;如果您是一个 Linux 初学者,或者您已经有一定的知识,但是您没有太多把握掌控他们,那么我不建议您使用 MEPIS。如果您确定知道您自己要的是什么,那么试试它吧。不管怎么说,MEPIS 是一个伟大的发行版。

2) Ubuntu的11.04

https://dn-linuxcn.qbox.me/data/attachment/album/201106/29/161857tu8emufqa8zanede.png

对于让这个发行版排到第二的位置,可能会让人感到意外,也可能会在您的意料之中。很多人不喜欢它的 Unity interface ,我也不喜欢它,它太单一了对于我来说。

那么为什么还能让它排第二呢?因为 Linux 桌面用户的使用量在桌面计算机中已经突破了 1% 的使用量。而 Ubuntu 在其中起了很大的作用,它的界面统一,使用方法具体,这样能够吸引大量的 Windows 和 Mac 用户,我认为这样做是对的。

不管出于什么原因,如果它能给 Linux 带来更多的用户,那么我绝对的支持它。

1) Mint 11

https://dn-linuxcn.qbox.me/data/attachment/album/201106/29/1619099smcccwyppsmwdsc.png

是的,它是基于 Gnome 的,但是,它是基于 Gnome 2.32 的,而不是 Gnome 3.0 的,这其中的区别很大。它的界面容易使用,我还可以根据我的需要来调整它,从而解放我的双手。

它还有基于 Ubuntu 的版本。这意味着,它有最新的最热门的应用程序。对于我来说,如果您是一个经验丰富的 Linux 用户,而且您不介意非使用 KDE 桌面,Mint 是当前最好的 Linux 桌面发行版。

不管怎么样,我们只要知道每一个伟大的发行版都会对 Linux 的发展起着推动作用,都会让 Linux 进步。上面是我对现在一些 Linux 桌面发行版的看法,在您心目中那个发行版是您的最喜欢的呢?

来源:https://linux.cn/article-171-1.html

Linux:什么Linux服务器最适合你?

  无论你是什么样的规模,总有一款发行版很适合。

  说到买衣服,我跟普通人一样。我只想走到一家商店,取下合适的衣服,买下后(什么,试穿一下?你是在开玩笑吗?!),直接回家。没错,我就想这样。 这些年来,我明白了这点:就因为某东西应该会合适并不意味着它就会合适。Linux服务器方面也是如此。当然,它们都基于同样的代码库而建,可以运行同样 的应用程序,但是某一款可能很适合你,而另一款可能不适合你。

  那么,你怎样才能知道哪一款适合自己呢?我们不妨先看看你应该对任何计算决策提出的这个基本问题:“你其实想要做的是什么?”

应用于大企业

  假设贵公司拥有数百个到几万个用户。你想要什么样的Linux服务器?这个问题其实很容易回答。你的首选应该是红帽企业级Linux(RHEL)。

  红帽为大企业提供了非常成熟和完善的支持,也很容易找到通晓RHEL的认证的技术员、管理员和工程师。RHEL还在一系列广泛的硬件上得到支持。无 论你运行的是机架x86服务器、刀片服务器、IBM POWER系统还是大型机,总有适合你的一款RHEL。简而言之,红帽堪称企业Linux的典范。

https://dn-linuxcn.qbox.me/data/attachment/album/201203/22/0818327jtec52sl313j15z.jpg

  不好意思,长头发,现在红帽相当适合大企业。

  觉得RHEL成本太高了,不适合你的口味?毕竟一分价钱一分货;但是另外有两款企业级Linux发行版值得大企业关注。这两款发行版就是甲骨文Linux和SUSE Linux企业服务器(SLES)。

  甲骨文Linux实际上是RHEL的山寨版。虽然我知道个别人喜欢甲骨文Linux甚过喜欢母发行版(RHEL),但是据我所知,用过它的人大多觉 得没有理由推荐它、而不推荐RHEL。另一方面,SLES有一个使用方便的安装和管理工具:YaST,我觉得它对于部署在分支机构规模的环境下大有用处。

  假设你的员工队伍中已经有一批并不专攻RHEL、甲骨文Linux或SLES的Linux专家。这种情况下,你可能应该考虑 Debian(http://www.debian.org/)。这是个社区Linux,但是对于深入了解Debian的那些人来说,它用起来极好。不 过,Debian不是适合非专家用户的Linux。

应用于小公司

  好了,假设贵公司只有几百号人,或者只有几十号人,也许就只有你和一条狗。现在你需要什么样的Linux服务器?上面的所有选择仍然适用。不过,我 觉得在这方面RHEL和SLES更加难分胜负。凭我的经验,RHEL在散布于多个地方的众多服务器上更容易管理,而SLES对置身于小办公室的我来说总是 表现出色。我建议你两者都试用一下,然后再作出自己的决定。

  目前,如果你已经拥有一些高素质的Linux管理员,又想省点钱,那么我会建议看一下红帽和SUSE各自的社区发行 版:Fedora(http://fedoraproject.org/)和openSUSE(http://www.opensuse.org/en /)。无法从两者处得到各自公司的支持。换句话说,如果你选择了这些发行版,得自行提供支持。但是如果你的IT员工对Linux熟悉得很,可能不需要帮 助,就能满足小公司的要求。就我自己的小办公室(有20个台式机和4台服务器)而言,openSUSE用起来很好。

  Ubuntu怎么样?Ubuntu也许是桌面Linux发行版中最受欢迎的品牌了。同样有Ubuntu Linux Server。你可以将Ubuntu Server用于比较大的公司;但是就大企业规模的负载而言,我还是更倾向于像甲骨文、红帽或SUSE这样的大公司为我提供支持,因为它们在处理安装在数 据中心规模的环境下的系统方面有着丰富经验。如果是至多只有一两个机架的服务器,Ubuntu应该非常适用。

  的确,如果你对自家小型办公室/家庭办公室(SOHO)服务器的要求只是基本的文件和打印机共享服务,那么现在的任何一款服务器Linux都能满足 要求。的确,在规模最小的办公室中,你可能已经在使用Linux,只是没有意识到罢了。许多可以用作USB打印服务器的网络附加存储(NAS)设备就使用 Linux来提供文件和打印服务,比如巴法络LinkStation Pro系列(http://www.buffalotech.com/products/network-storage/)。对小办公室来说,这也许就 是你所需要的Linux。

  但是如果你需要介于两者之间的Linux服务器,怎么办?你知道自己需要的不仅仅是基本的文件和打印服务,但又不想出钱请某人担任服务器管理员。你 自己可以充任服务器管理员这个角色,但是你更想把时间花在公司业务上,而不是花在服务器上。这种情况下,有适合你的Linux吗?

  当然有。这些年来,已经出现了好多一切齐全即可使用的Linux发行版。如果使用这种发行版,你可以将Linux安装在服务器上——服务器也许就是 一台很老的台式机,只是有点太旧了,再也没法继续日常使用,或者购买一款硬件设备,使用单一界面来掌管一切任务。目前这一代安装后即忘的Linux服务器 的两个代表是ClearOS(http://www.clearfoundation.com/Software/overview.html)和 Zentyal(http://www.zentyal.org/)。

处理单一任务的服务器

  假设你不需要一台通用服务器。除了文件和打印外,你只需要完成一项任务。你不想仅仅为了处理这一项任务而很麻烦地维护一台服务器,无论这项任务是提供电子邮件服务器、内容管理系统还是域名系统(DNS)服务器。仍可以使用Linux吗?照样可以。

  这些年来,出现了好多“只做好一项任务”的Linux服务器发行版。其中,仍然存在、本人又最喜欢的有:基于Ubuntu服务器的TurnKey Linux、由红帽的几个创始人开发的rPath以及SUSE Appliance Program。

  TurnKey Linux 使用比较老的Ubuntu Linux版本8.04作为其基础。别被版本老给蒙骗了:就大多数企业用途而言,该发行版用起来很好。TurnKey Linux提供的单一用途的应用超过45种。这包括:各种内容管理系统,比如Drupal、Joomla和WordPress;通讯系统,包括 Zimbra电子邮件和ejabberd即时通讯;以及基本的办公室服务器,比如文件服务器和用于Windows网络的主域控制器。你可以将这些部署在作 为虚拟机的独立服务器上,也可以部署在亚马逊云上。

  rPath适用于这类公司:已经在内部拥有自己的企业应用程序,想把它们迁移到云端。rPath专门把你已经在内部拥有的应用程序由一种以服务器为中心的模式改成成本常常更低的云模式,而不是仅仅为你提供常用的、随时可用的Linux应用程序。

https://dn-linuxcn.qbox.me/data/attachment/album/201203/22/08183239ovhpx2vhtp303i.jpg

  SUSE Appliance Program提供了异常简单的安装。

  SUSE Appliance Program(http://www.suse.com/partners/isv/appliance/)提供了类似于TurnKey Linux的方案。但是它不是简单地提供一套常用的服务器应用程序,而是使用SUSE Studio这个核心的在线Linux应用程序构建器和SUSE Linux Enterprise JeOS(正好够用的操作系统),让你或独立软件开发商(ISV)能够精挑细选Linux服务器中想要的组件。

  不过与TurnKey不一样,SUSE的Applications(http://www.suse.com/partners/isv /appliance/appliance_pavilion.html)还为开发商的企业应用程序提供了全面支持。这包括:Adobe LiveCycle企业套件软件(一款集成的J2EE服务器解决方案);面向中小型企业的多款IBM即插即用硬件设备;以及Messaging Architects的M+Guardian,这是基于策略的电子邮件安全解决方案。不过与TurnKey一样,你可以通过多种方式来部署这些应用程序: 部署在虚拟机上、部署在亚马逊云上或部署在专用硬件平台上。

LAMP/Web服务器

  恐怕最流行的一种服务器莫过于运行Linux-Apache-MySQL-PHP/Python/Perl组合(名为LAMP)的服务器了。这些服 务器支撑着世界上大多数的Web服务器,它们还提供了世界上大多数的电子邮件及其他互联网服务。如果你由一家Web主机托管公司来运行自己的网站,那么很 可能就在使用CentOS Linux(http://www.centos.org/)。这是一款低成本的RHEL克隆版。

  CentOS用起来很好,前提是你知道自己在干什么。我在自己的Web服务器上运行CentOS时,如果只想在默认设置下运行它,它很好;但如果你 不是Linux专家,它就很难处理。像Webmin(http://webmin.com/)这些易于使用的工具使得设置用户等日常任务很容易完成,但是 如果你想处理更多的任务,它就需要专家了。

作为服务器的Linux

  说到任何服务器的使用,这最后一点很重要。我听许多人抱怨运行Linux服务器有多难。就大多数普通的使用而言,Linux用起来并不难。它在办公 室里面的主要对手Windows Server 2008 R2或在数据中心的主要对象AIX 和Solaris用起来也不难。但是没有哪一款服务器操作系统用起来像桌面系统一样容易——你越是更充分地利用它,越是要求它处理普通任务之外的任务,那 么遇到需要专家的情况这种可能性就越大。

  千万别忘了上面这一点。连一台普通的文件服务器(同样,不管采用什么操作系统) 都很难始终为所有客户提供其服务。服务器管理起来本身就要比桌面系统困难得多。

  尽管如此,Linux还是提供了一种低成本的方法,为你提供可能需要的每一项网络服务。就任何网络要求而言——无论只是你们小两口想在家庭办公室共 享文件和单一打印机,还是Facebook或华尔街为数百万计的并发用户同时提供实时数据,Linux都是值得选择的服务器操作系统。

原文链接: http://www.itworld.com/data-centerservers/256430/linux-servers-which-distro-you

译文:http://server.51cto.com/sManage-324215.htm

Linux:Linux下utf-8 BOM 的检查和删除

当源程序是gb格式,你转换为 utf8 的时候,很多情况是头部会出现bom,当是php 程序时候,这样会出现很多意想不到的事情,那怎么办呢,你可以用linux 命令来查找,然后对文件的bom 进行删除,就ok 了

grep -r $’\xEF\xBB\xBF’ * |grep .php

bom:UTF-8签名(UTF-8 signature)也叫做BOM(Byte Order Mark)

用vim去除utf-8 BOM

1.’去掉utf-8 BOM

:set nobomb

2.’保留utf-8 BOM

:set bomb

您可以任意转载本文,但转载时请以超链接形式标明文章原始出处和作者信息及版权声明 作者:danny,原文链接:http://www.hidba.net/20120112/616.html 

Linux:Linux 下架设 rsync 服务器

  rsync 是一个Unix系统下的文件同步和传输工具。rsync是用 “rsync 算法”提供了一个客户机和远程文件服务器的文件同步的快速方法。

rsync 包括如下的一些特性:

  • * can update whole directory trees and filesystems 能更新整个目录和树和文件系统;
  • * optionally preserves symbolic links, hard links, file ownership, permissions, devices and times 有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等;
  • * requires no special privileges to install 对于安装来说,无任何特殊权限要求;
  • * internal pipelining reduces latency for multiple files 对于多个文件来说,内部流水线减少文件等待的延时;
  • * can use rsh, ssh or direct sockets as the transport 能用rsh、ssh 或直接端口做为传输入端口;
  • * supports anonymous rsync which is ideal for mirroring 支持匿名rsync 同步文件,是理想的镜像工具;

安装配置过程:

一、建相应的文件及文件夹

[root@estals60:~]#mkdir /etc/rsyncd  --在/etc目录下创建一个rsyncd的目录,我们用来存放rsyncd.conf 和rsyncd.secrets文件;
[root@estals60:~]#touch /etc/rsyncd/rsyncd.conf  --创建rsyncd.conf ,这是rsync服务器的配置文件;
[root@estals60:~]#touch /etc/rsyncd/rsyncd.secrets --创建rsyncd.secrets ,这是用户密码文件;
[root@estals60:~]#chmod 600 /etc/rsyncd/rsyncd.secrets  --为了密码的安全性,我们把权限设为600;
[root@estals60:~]#ls -lh /etc/rsyncd/rsyncd.secrets
-rw------- 1 root root 14 2007-07-15 10:21 /etc/rsyncd/rsyncd.secrets
[root@estals60:~]#touch /etc/rsyncd/rsyncd.motd

  二、修改 rsyncd.conf 和rsyncd.secrets 和rsyncd.motd

rsyncd.conf 是rsync服务器主要配置文件,我们来个简单的示例;

比如我们要备份服务器上的 /nsn_talko_production/talko/var/www/html/Talko/talko.next/repository/

# Minimal configuration file for rsync daemon
# See rsync(1) and rsyncd.conf(5) man pages for help
# This line is required by the /etc/init.d/rsyncd script
pid file = /var/run/rsyncd.pid
port = 873
address = estals60
#uid = nobody
#gid = nobody
uid = root
gid = root
use chroot = yes
read only = yes

#limit access to private LANs
hosts allow=* #192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0
#hosts deny=*
max connections = 5
motd file = /etc/rsyncd/rsyncd.motd

#This will give you a separate log file
#log file = /var/log/rsync.log
#This will log every file transferred - up to 85,000+ per user, per sync
#transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[P_repositor]
path = /nsn_talko_production/talko/var/www/html/Talko/talko.next/repository/
list=yes      --list 意思是把rsync 服务器上提供同步数据的目录在服务器上模块是否显示列出来。默认是yes 。如果你不想列出来,就no ;如果是no是比较安全的,至少别人不知道你的服务器上提供了哪些目录。你自己知道就行了
ignore errors                               --忽略IO错误
auth users = root                           --用户账号 (这个必须得是系统中已经存在的账号)
secrets file = /etc/rsyncd/rsyncd.secrets   --存放密码的地方
comment = P_repositor          --相当于是一种接口名字,等服务跑起来了客户端可以直接用这名字调用相关服务器的文件夹内容信息
#exclude =   beinan/  samba/    --无视这两个文件夹的内容

rsyncd.secrets的内容如下类似

root:123456 yofee:123456

rsyncd.motd 文件

  它是定义rysnc 服务器信息的,也就是用户登录信息。比如让用户知道这个服务器是谁提供的等。

+++++++++++++++++++++++++++
+ Yofee Packages rsync    +
+++++++++++++++++++++++++++

三、启动rsync服务器

[root@estals60:~]#/usr/bin/rsync –daemon  –config=/etc/rsyncd/rsyncd.conf

四、防火墙的设置

[root@estals60:~]#iptables -A INPUT -p tcp -m state –state NEW  -m tcp –dport 873 -j ACCEPT [root@estals60:~]#iptables -L  查看一下防火墙是不是打开了 873端口;

五、执行同步命令

rsync -avzP root@estals60::P_repositor /nsn_talko/talko/var/www/html/Talko/talko.next/

这时会要求输入root的密码,然后就没啥问题了。

另外其实也可以考虑把他建在系统任务里面定时运行。道理都是一样的,用crontab,这里就不再重述了。

######################
uid = nobody
gid = nobody
use chroot = no
read only = false
max connections = 5
port = 873
motd file = /etc/rsyncd/rsyncd.motd
pid file = /tmp/rsyncd.pid
lock file = /tmp/rsync.lock
log format = %t %a %m %f %b
log file = /tmp/rsyncd.log
timeout = 300

[update]
path = /data/autoupdate/
ignore errors = yes
list = false
comment = update
secrets file = /etc/rsyncd/rsyncd.secrets
hosts allow = *
#hosts deny = 0.0.0.0/32
###########################################

来自:http://wangwei007.blog.51cto.com/68019/1157898

Linux:红帽企业版 Linux 6.4 试用体验

  红帽企业版Linux 6.4正式版已于2013年2月发布,下面介绍一下十天左右的使用感受,供广大网友参考。 对于多媒体以及办公方面笔者感觉Linux 在最近两三年已经做得相当不错了,可惜由于惯性原因还是不能占据桌面市场。还是看看笔者关心的企业级应用部分。

一、红帽企业版RHEL6.4的新功能

1、和微软的合作

  微软于2012 年初开始向Upstream的 linux 核心提供驱动程序。主要包括Hyper-V 的应用代码,所以在2012 Linux kernel development 报告中披露,微软对于Linux程序代码的贡献排名上升比例是大约1.1% ,如图1 。

https://dn-linuxcn.qbox.me/data/attachment/album/201304/06/183045ewmhbbnl4ynxm9m7.jpg

图1 微软对于Linux程序代码的贡献排名上升比例是大约1.1%

  在 Hyper-V 中对红帽企业版 Linux 6.4 集成的红帽企业版 Linux 虚拟机安装以及 Hyper-V 半虚拟设备支持可让用户在微软 Hyper-V hypervisor 顶层将红帽企业版 Linux 6.4 作为虚拟机运行。这将提高RHEL的整体性能对微软Hyper-V和微软的Azure用户持久虚拟机运行RHEL 6.4。另外在桌面操作方面Evolution邮件加入对于Microsoft Exchange和日历进化的支持。

2、文件系统和存储方面

  文件系统方面比较重要的改进是并行NFS(pNFS)客户端的加入,pNFS支持直接I / O更快的数据访问。这种驱动器I / O密集的用例,包括数据库工作负载特定的性能优势。Linux 内核在2.6.30 开始支持pNFS,目前是少数支持pNFS的操作系统。网络文件系统(Network File System,NFS)是大多数局域网(LAN)的重要组成部分。但 NFS 不适用于高性能计算中苛刻的输入输出密集型应用程序,至少以前是这样。NFS 标准的最新修改纳入了 Parallel NFS(pNFS),它是文件共享的并行实现,将传输速率提高了几个数量级。图2 是支持pNFS的NFS4.1 版本的示意图。

图2 支持pNFS的NFS4.1 版本

  在红帽企业版 Linux 6.4 中完全支持 pNFS.pNFS 支持 3 个不同的存储协议或者布局:文件、对象和块。红帽企业版 Linux 6.4 NFS 客户端支持文件布局协议。有关 pNFS 的详情请参考 http://www.pnfs.com/。另外LVM 现在可以创建、删除和重新定义 RAID10 逻辑卷大小。

  3、安全管理方面

  身份管理方面主要是SSSD的功能改进, 提高系统安全服务守护程序(SSSD)增强于Microsoft Active Directory中的互操作性的经验,在异构环境中提供集中身份的访问控制,适用于Linux / Unix客户端。在红帽企业版 Linux 6.4 中,已将 SSSD 改进为可让您为使用 SSSD 登录的用户选择 DIR: 缓存。这个功能是作为技术预览引进。需要说的是SSSD无需特殊设置使用system-config-authentication工具配置后会自动运行 。

  另外在防火墙方面还有一个小工具叫:退回防火墙配置。如果无法使用默认配置,iptables 和 ip6tables 服务现在提供分配退回防火墙配置的功能。如果采用 /etc/sysconfig/iptables 中的防火墙规则失败,则会采用现在的退回文件。退回文件名为 /etc/sysconfig/iptables.fallback,采用 iptables-save 文件格式(与/etc/sysconfig/iptables 相同)。如果采用退回文件仍失败,则没有进一步的退回设置。要生成退回文件,请使用标准防火墙配置工具,并将该文件重命名或者复制到退回文件中。在 ip6tables 服务中可采用同样的步骤,只需要使用 “ip6tables” 替换所有“iptables”。

Linux:Linux应用总结:自动删除n天前日志

  Linux 是一个很能自动产生文件的系统,日志、邮件、备份等。虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种 爽快的事情。不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧。

1.删除文件命令:

find 对应目录 -mtime +天数 -name “文件名” -exec rm -rf {} \;

  实例命令:

find /opt/soft/log/ -mtime +30 -name “*.log” -exec rm -rf {} \;

  说明:将/opt/soft/log/目录下所有30天前带”.log”的文件删除。

  具体参数说明如下:

find:linux的查找命令,用户查找指定条件的文件;

/opt/soft/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+30:查找30天前的文件,这里用数字代表天数;

“*.log”:希望查找的数据类型,”*.jpg”表示查找扩展名为jpg的所有文件,”*”表示查找所有文件,这个可以灵活运用,举一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} \; :固定写法,一对大括号+空格+\+;

2.计划任务:

  若嫌每次手动执行语句太麻烦,可以将这小语句写到一个可执行shell脚本文件中,再设置cron调度执行,那就可以让系统自动去清理相关文件。

2.1创建shell:

touch /opt/soft/bin/auto-del-30-days-ago-log.sh

chmod +x auto-del-30-days-ago-log.sh

  新建一个可执行文件auto-del-30-days-ago-log.sh,并分配可运行权限

2.2编辑shell脚本:

vi auto-del-30-days-ago-log.sh

  编辑auto-del-30-days-ago-log.sh文件如下:

#!/bin/sh

find /opt/soft/log/ -mtime +30 -name “*.log” -exec rm -rf {} \;

  ok,保存退出(:wq)。

2.3计划任务:

#crontab -e

  将auto-del-30-days-ago-log.sh执行脚本加入到系统计划任务,到点自动执行

  输入:

10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

  这里的设置是每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务了。

  完成以上三步,你就再也不每天惦记是否硬盘空间满了,该清理日志文件了,再也不会受到服务器硬盘空间不足的报警信息了,放心的去看书喝咖啡去吧!

来自:http://www.cnblogs.com/peida/archive/2013/03/25/2980121.html