linux中国_ 发布的文章

Ubuntu One服务现已正式关闭。在7月31日之前你还能够获取你存储的文件,否则它们将被永远删除。

Canonical在今年早些时候宣布将会关闭这项服务,理由是缺乏付费用户以及和Google,Dropbox以及其它云存储服务日益增加的竞争,这是他们作出这个决定的首要原因。

在尝试登录Ubuntu One控制面板的时候会显示下图所示的通知来提醒用户服务已经中止:

本月早些时候Ubuntu 12.04 LTS收到了一个推送更新,提醒用户Ubuntu One不久后将会被从桌面移除,至于Ubuntu 14.04 LTS,在四月发布时就已没有预装Ubuntu One。

获取你的数据

要将你的数据以.zip文件的形式下载下来,你只需登录,然后点击在通知下方的橙色按钮。

Canonical也和云存储迁移服务商mover.io达成合作,允许用户直接从Ubuntu One向其它服务,比如Dropbox,Google Drive以及Copy导入文件。

Mover,一个云存储迁移服务商,它盛誉Ubuntu One为“...一个世界级的文件同步及分享产品”,现向Ubuntu One用户免费提供数据迁移服务,尽管它需要用户创建一个账户。该公司通常只允许免费用户迁移最多2GB的数据。

想了解通过mover.io将你的数据迁移到Google Drive的更多细节,请查阅下列知识库文章。

关于退款

对于那些已经为额外存储空间以及Ubuntu One音乐服务付费的用户,Canonical告知这些用户将会在接下来7到10天内收到退款。

如果你正在寻找Ubuntu One的替代服务,可以查看我们总结的读者中使用的最流行的云服务


via: http://www.omgubuntu.co.uk/2014/06/ubuntu-one-discontinued-grab-files-now

译者:alim0x 校对:wxy

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

虚拟主机常用于在一个单独的IP地址上提供多个域名的网站服务。如果有人想在单个VPS的单个IP地址运行多个网站,这是非常有用的。

在这个教程中,让我告诉你如何设置在Ubuntu 14.04 LTS的Apache网页服务器设置虚拟主机。请注意,这个教程只针对Ubuntu14.04的32位版本。

我不保证它也可以工作在其它更低的Ubuntu版本或者Ubuntu衍生版本(虽然可能过程是类似的)。

方案

在这个教程中,我会使用Ubuntu 14.04 32位 LTS,并搭建2个测试网站分别命名为“unixmen1.local” 和 “unixmen2.local”.我的测试机分别为192.168.1.250/24server.unixmen.local。你可以根据你的需要更改虚拟域名。

安装Apache网站服务器

安装apache服务器之前,我们来更新一下我们的Ubuntu服务器:

sudo apt-get update

然后,用下面命令来安装apache网络服务器:

sudo apt-get install apache2

安装apache服务器之后,让我们通过这个URL http://你的服务器的IP地址/ 来测试网站服务器是否正常工作

如你所见,apache服务器已经工作了。

设置虚拟主机

1.创建虚拟目录

现在,让我们继续安装虚拟主机。正如我先前所述,我要新建2台虚拟主机分别命名为“unixmen1.local”和“unixmen2.local”.

创建一个公用的文件夹来存放这两台虚拟主机的数据。

首先,让我们为unixmen1.local这个站点创建一个目录:

sudo mkdir -p /var/www/unixmen1.local/public_html

接着,为for unixmen2.local站点创建一个目录:

sudo mkdir -p /var/www/unixmen2.local/public_html

2. 设置所有者和权限

上面目录现在只有root拥有权限。我们需要修改这2个目录的拥有权给普通用户,而不仅仅是root用户。

sudo chown -R $USER:$USER /var/www/unixmen1.local/public_html/
sudo chown -R $USER:$USER /var/www/unixmen2.local/public_html/

$USER”变量指向了当前的登录用户。

设置读写权限给apache网页根目录(/var/www)及其子目录,这样每个人都可以从目录中读取文件。

sudo chmod -R 755 /var/www/

这样,我们就创建好了一些文件夹来保存网络相关数据并分配必要的权限和所属用户。

4. 为虚拟主机创建示例页

现在,我们给网站增加示例页。第一步,让我们给虚拟主机unixmen1.local创建一个示例页。

给unixmen1.local虚拟主机创建一个示例页,

sudo vi /var/www/unixmen1.local/public_html/index.html

添加以下内容:

<html>
 <head>
 <title>www.unixmen1.local</title>
 </head>
 <body>
 <h1>Welcome To Unixmen1.local website</h1>
 </body>
</html>

保存并关闭文件。

同样的,添加示例页到第二台虚拟主机。

sudo vi /var/www/unixmen2.local/public_html/index.html

添加以下内容:

<html>
 <head>
 <title>www.unixmen2.local</title>
 </head>
 <body>
 <h1>Welcome To Unixmen2.local website</h1>
 </body>
</html>

保存并关闭文件。

5. 创建虚拟主机配置文件

默认情况下,apache有一个默认的虚拟主机文件叫000-default.conf。我们将会复制000-default.conf文件内容到我们新的虚拟主机配置文件中。

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen1.local.conf
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen2.local.conf

确保虚拟主机配置文件末尾包含.conf扩展名。

现在,修改unximen1.local.conf文件以符合需求。

sudo vi /etc/apache2/sites-available/unixmen1.local.conf

使相关的变化直接呈现在unixmen1站点中(译注:以“#”开头的注释行可以忽略。)。

<VirtualHost *:80>
        # The ServerName directive sets the request scheme, hostname and port that
        # the server uses to identify itself. This is used when creating
        # redirection URLs. In the context of virtual hosts, the ServerName
        # specifies what hostname must appear in the request's Host: header to
        # match this virtual host. For the default virtual host (this file) this
        # value is not decisive as it is used as a last resort host regardless.
        # However, you must set it for any further virtual host explicitly.
        #ServerName www.example.com

        ServerAdmin [email protected]
        ServerName unixmen1.local
        ServerAlias www.unixmen1.local
        DocumentRoot /var/www/unixmen1.local/public_html

        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.
        # It is also possible to configure the loglevel for particular
        # modules, e.g.
        #LogLevel info ssl:warn

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        # For most configuration files from conf-available/, which are
        # enabled or disabled at a global level, it is possible to
        # include a line for only one particular virtual host. For example the
        # following line enables the CGI configuration for this host only
        # after it has been globally disabled with "a2disconf".
        #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

同理,修改第二台主机文件。

sudo vi /etc/apache2/sites-available/unixmen2.local.conf

使相关的修改在unixmen2 站点呈现出来。

<VirtualHost *:80>
        # The ServerName directive sets the request scheme, hostname and port that
        # the server uses to identify itself. This is used when creating
        # redirection URLs. In the context of virtual hosts, the ServerName
        # specifies what hostname must appear in the request's Host: header to
        # match this virtual host. For the default virtual host (this file) this
        # value is not decisive as it is used as a last resort host regardless.
        # However, you must set it for any further virtual host explicitly.
        #ServerName www.example.com

        ServerAdmin [email protected]
        ServerName unixmen2.local
        ServerAlias www.unixmen2.local
        DocumentRoot /var/www/unixmen2.local/public_html

        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.
        # It is also possible to configure the loglevel for particular
        # modules, e.g.
        #LogLevel info ssl:warn

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        # For most configuration files from conf-available/, which are
        # enabled or disabled at a global level, it is possible to
        # include a line for only one particular virtual host. For example the
        # following line enables the CGI configuration for this host only
        # after it has been globally disabled with "a2disconf".
        #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

修改虚拟主机文件后,禁用默认的虚拟主机配置(000.default.conf),然后启用新的虚拟主机配置,如下所示。

sudo a2dissite 000-default.conf
sudo a2ensite unixmen1.local.conf
sudo a2ensite unixmen2.local.conf

最后,重启apache服务器。

sudo service apache2 restart

就是这样。现在,我们成功地配置了apach虚拟主机在我们的Ubuntu服务器上

测试虚拟主机

编辑/etc/hosts文件,

sudo vi /etc/hosts

在文件末尾添加如下所示的虚拟域名。

192.168.1.250   unixmen1.local
192.168.1.250   unixmen2.local

保存并关闭文件。

打开你的浏览器并访问http://unixmen1.local**或**http://unixmen2.local。你将会看到我们之前创建的示例页。

Unixmen1.local 测试页:

Unixmen2.local 测试页

如果你想从你的远程系统访问这些站点,你需要在你的DNS服务器添加实际域名记录。不过,我没有真实的域名和DNS服务器,我只想通过我的本地系统测试,那么它刚好如我所愿地工作。

Cheers!


via: http://www.unixmen.com/setup-virtual-hosts-apache-ubuntu-14-04-lts/

译者:disylee 校对:wxy

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

这是一个很棒的里程碑不是吗?Steam上现在已经有500个(截至6月7日已有509个)兼容Linux的游戏了,对任何人而言这都着实是个巨大的数目。人们将不再一直说着“可是Linux上没有游戏”,但令人悲伤的是他们会说Linux上几乎没有AAA级的游戏大作(这确实是事实),但这会是一个循序渐进建立起游戏生态的过程。

我一直在说这个(译注:指Linux游戏会增多的), 但我仍从没想过我们会有一天像这样实现它。我毫不怀疑今年晚些时候我们能够有XCOM,Civilization(文明)以及更多即将到来游戏令人惊喜的发布消息。

一旦Steam Machines/SteamOS发布,如果它们获得了成功我们应该可以看到Linux平台游戏数目甚至上升得更快。

所以,Steam上的支持Linux平台的游戏数目达到1000还要多久?也许是今年末,谁知道呢!

我现在要去拿我的派对帽了...你也要庆祝这个里程碑吗?


via: http://www.gamingonlinux.com/articles/steam-hits-the-big-500-for-linux-games.3849

译者:alim0x 校对:wxy

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

Linux基金会宣布鉴于年中个别成员的努力和推广。对于每一位在2014年6月1日到6月30日晚上11:59之间加入的新会员,Code.org将会得到25美元。

Code.org是通过让更多的学校提供机会,以提高女性和有色人种学生的参与,致力于扩展计算机科学教育的非营利性组织。其目标是提供给每所学校的学生学习计算机科学的机会。Code.org与Linux基金会的使命是增加人们学习编程的机会。

Linux基金会的CMO Amanda McPherson解释道,当今的许多Linux人才都是从学生时代开始摆弄电脑,并在大学期间编写了简单地程序。通过将提供这个月的个人会员捐款给Code.org,我们希望社会各界能够支持Linux和Linux创始人Linus Torvalds的工作,同时帮助增加获取计算机科学教育的下一代Linux开发人员和系统管理员。

学习和教育也是Linux基金会最优先考虑的。基金会最近宣布的第一个“Linux入门”大规模开放式网络课程(MOOC),它是免费提供给所有人的。已经有超过14万人登记预计8月开始的第一节课。它也提供并组织各种培训课程。

Linux基金会会员们支持着Linux和开源社区的发展。作为额外津贴,成员也会得到包括20%折扣的LinuxCon和CloudOpen大会门票的独家优惠;高达10%折扣的Linux基金会培训;一个Linux.com的电子邮件地址(例如[email protected]);购买戴尔,惠普和联想电脑的员工优惠价;高达35%折扣的O'Reilly书籍和电子书;以及其他各种折扣。

每年的会员费为99美元。对于学生是25美元,但包含相同的个人会员优惠。要注册,请访问: https://www.linuxfoundation.org/about/join/individual


via: http://www.muktware.com/2014/06/linux-foundation-donate-portion-membership-fees-code-org/27942

译者:乌龙茶 校对:wxy

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

一般来说,服务器非常慢可能原因是多方面的,有可能是配置错误,脚本错误或者是一些奇诡的硬件。当然也有可能是有人对你的服务器进行 Dos (拒绝服务攻击)或者 DDOS (分布式拒绝服务攻击)。

Dos攻击或者DDos攻击目的是使服务器或者网络资源耗尽,使其他用户无法使用。一般来说,这种攻击主要针对重要的网站或服务,比如银行、信用卡支付网关甚至是根域名服务器。Dos攻击主要通过强制目标主机重启或大量消耗其主机资源,使得目标主机无法提供服务或者妨害主机和用户之间的通信的手段,使得主机无法提供正常的服务的。

在本文中你将知道如何在终端中使用netstat命令判断服务器是否遭受Dos攻击。

netstat命令的用户手册描述其作用是用来显示网络连接、路由表、接口统计、伪连接和组播成员的。

一些例子和解释

netstat -na

该命令将显示所有活动的网络连接。

netstat -an | grep :80 | sort

显示所有80端口的网络连接并排序。这里的80端口是http端口,所以可以用来监控web服务。如果看到同一个IP有大量连接的话就可以判定单点流量攻击了。

netstat -n -p|grep SYN_REC | wc -l

这个命令可以查找出当前服务器有多少个活动的 SYNC\_REC 连接。正常来说这个值很小,最好小于5。 当有Dos攻击或者邮件炸弹的时候,这个值相当的高。尽管如此,这个值和系统有很大关系,有的服务器值就很高,也是正常现象。

netstat -n -p | grep SYN_REC | sort -u

列出所有连接过的IP地址。

netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'

列出所有发送SYN\_REC连接节点的IP地址。

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

使用netstat命令计算每个主机连接到本机的连接数。

netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

列出所有连接到本机的UDP或者TCP连接的IP数量。

netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

检查 ESTABLISHED 连接并且列出每个IP地址的连接数量。

netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1

列出所有连接到本机80端口的IP地址和其连接数。80端口一般是用来处理HTTP网页请求。

如何减少DOS攻击

一旦你获得攻击服务器的IP地址你就可以使用以下命令拒绝此IP的所有连接。

iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT

注意,你需要将 $IPADRESS 替换成需要拒绝连接的IP地址。

执行完以上命令后,使用以下命令结束所有的httpd连接以清理系统。

killall -KILL httpd

然后执行以下命令重启httpd服务。

service httpd start           #RedHat 系统 
/etc/init/d/apache2 restart   #Debian 系统

via: http://linuxaria.com/howto/how-to-verify-ddos-attack-with-netstat-command-on-linux-terminal

译者:shipsw 校对:wxy

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

如果你的公司依赖像OpenSSL这样的开源软件,是时候主动点了。

心脏流血漏洞让开源社区如芒在背。

ComputerWorld的Richi Jennings 抨击说“又一个非常可怕的开源失败。”(他是要做标题党么?)ZDNet的Steven J. Vaughan-Nichols不像是作秀反开源,却仍旧将心脏流血漏洞渲染为“开源软件的最遭时刻”。而最后,ZDNet的Chris Duckett则务实地倡议:“商业公司(应该)筹集资金来避免心脏流血再次发生。”

而实际上,企业资金并不是解决心脏流血事件的最终答案 。你才是!

想要避免开源失败的公司应该不仅仅是开源软件的用户,还要是贡献者。

贡献者乘坐头等舱

贡献者能够引导特定的项目。他们占据主动,而不是被动接受。大多数企业缺乏资源参与他们所使用的所有开源项目,但每家公司都可以资助给那些真正关系到他们的项目。并且资助得越多,得到的好处越大。

开源就是一个不断给予的礼物,尤其是给予那些对开源反哺的人们。

我在MongoDB的同事Adam Comerford让这点更有说服力:如果你看看第一批得知Heartbleed漏洞的时间线,那些第一批得知的(如谷歌)有一个相当大的优势。如Comford所说的,这些公司有一个显著的优势就是他们可以在bug还未大规模传开的时候率先采取措施保护他们的系统。

鉴于早期了解像Heartbleed之类问题的优势,Comerford问:“我如何确保我在这类问题的早期通知列表里面?”

如果你依赖于专有软件,你有一个答案:向卖方支付大量的金钱,并希望他适时地响应。但是,如果你正在使用开源软件,有一个更多选择: “要么有大量的员工给[开源项目]做贡献 ,或者...有认识主要贡献者的员工(我们可以找找,他们大多也会贡献其他开源软件项目,像其他的极客和呆瓜一样。“

Comerford断言说,好处不止这样:

这有很多好处 - 除了让问题及早通知,让手头上的专家来应付这些棘手的更新,以评估你的风险,甚至可能在公众知道之前内部解决问题。在确定项目的方向上你还可以得到重视的回馈,可以影响到关键特性的优先级。最终,你会得到社区的善意,使产品变得更好,并有可能成为其它的聪明贡献者的工作目标。

换句话说,参与进来。成员有特权,主要的特权可能就是信息。

选择在哪贡献

同样,没有一家公司有足够的资源来有效地促进所有它所使用的项目,这就是为什么Comerford建议对关键项目上这么做的原因:

如果你要人们列出在企业中所有开源关键技术,你可能会得到一张很长的名单。然后,告诉他们,他们将必须清点人工和预算来支持清单上的每一种技术的话(并验证它) - 它可能会迅速缩水。

如果你是一个AMD那样的芯片公司,给Linux内核贡献基本驱动程序和其他代码很可能是强制性的。给LibreOffice贡献可能不是。或者,如果你判断你的未来在Hadoop上进行深层数据分析,你应该贡献Hadoop,即使你依旧免费使用OpenSSL社区的成果。比如Dish Networks公司,它的 CIO告诉上周在开放商业会上的人们,他们正在将重要的数据从关系型数据库转到Apache的Kafka,那他最好研究Kafka的代码,即使他不贡献给Apache HTTP服务器项目。

每家公司都有其优先级,以及这些优先级应该以严肃的承诺而确立。

这是确保这些项目安全的一部分办法。而另一部分,它是一种形成影响力指引的方式。但同时,红帽公司CEOJim Whitehurst早在2008年声明,它是显著减少IT花费的办法:

今天编写的绝大多数软件是企业编写的,不得转售。并且绝大多数是从来没有真正使用过。IT软件开发中的浪费是巨大的....最终,开源给全世界的客户提供价值,我们不仅需要让我们的客户作为开源产品的用户,而且真正加入开源和参与在开发社区。

Comerford坚持认为:“如果我在业务中使用开源软件,我应该雇开发人员来积极给软件做贡献,如果他们自己不是核心开发者,那就雇佣核心开发者。 ”这是充分利用开源软件的关键:给它做贡献,不只是使用它。


via: http://readwrite.com/2014/05/14/heartbleed-open-source-contribution-users

译者:geekpi 校对:wxy

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