分类 新闻 下的文章

Linux上有着许多不同口味儿的截屏工具,包括桌面环境专用的截屏程序(如: KDE里面的KSnapshot,GNOME里面的gnome-screenshot,Xfce的Screenshooter),或者是通用的截屏程序(如 Shutter)。而Scort("SCReen shOT"的缩写)是最独一无二的截屏工具之一,它是一个命令行截屏工具。虽然它的界面十分简约,但Scrot在功能上和其它专用的基于GUI的屏幕捕获工具一样强大。举个例子,Scrot支持延时截屏,截屏调整品质/大小,命令行传递等功能。如果你是那些热衷命令行的爱好者之一,Scrot应该是你加入兵器库中的又一实用工具。在这个教程中,我将会描述如何在命令行中用Scrot截屏

在Linux中安装Scrot

在 Debian,Ubuntu 或 Linux Mint 上安装Scrot:

$ sudo apt-get install scrot

在 Fedora 上安装Scrot:

$ sudo yum install scrot

要在CentOS上安装Scrot,你可以按照下列步骤从源码编译:

首先在CentOS上启用Repoforge,然后使用下列命令:

$ sudo yum install giblib-devel
$ wget http://linuxbrit.co.uk/downloads/scrot-0.8.tar.gz
$ tar xvfvz scrot-0.8.tar.gz
$ cd scrot-0.8
$ ./configure
$ make
$ sudo make install

用Scrot截屏

在这个教程的下面的部分,我会描述如何通过几种不同方法用Scrot截屏。

1. 截下整个桌面

截取整个桌面十分简单。只需运行Scrot命令,不需要任何参数,然后它会保存一张整个桌面的截屏,以(日期标记).png的文件形式保存在当前文件目录下。

$ scrot

你也可以指定保存目标文件夹和截图文件名。

$ scrot ~/Pictures/my_desktop.png

2. 截取特定窗口或矩形区域

Scrot允许你在桌面选择一个特定的窗口或定义一个矩形区域来截图。使用下列命令来实现:

$ scrot -s

运行这个命令后,继续用你的鼠标单击任意窗口或画出一个矩形,它能够触发对选定窗口/区域的屏幕截取。(LCTT译注,还要使用鼠标,伐快乐)

有时候你选定的区域或窗口可能会被桌面的其它窗口部分遮挡。在这种情况下,你在截屏前需要一点时间来清理那个部分。那正是延迟截屏能够帮到你的,就像下面所描述的那样。

3. 延迟截屏

延迟截取在各种情况下都很实用。就在截图前,你可能想要移动一下窗口,激活一下菜单,或是触发特定时间(如通知)等等。 使用“-d N”参数,我们可以将截屏进程延迟N秒。

$ scrot -s -d 5

4. 调整截屏质量

你可以在1到100的范围内调整截取的图像质量(数字越大质量越高)。默认质量设置为75。

$ scrot -q 50

5. 调整截屏尺寸

你可以在1到100的范围内调整截取的图像尺寸(数字越大尺寸越大)。减小截屏的尺寸到原图的10%:

$ scrot -t 10

6. 将截取的截屏传递给其它命令

Scrot允许你发送保存的截屏图像给任意一个命令作为它们的输入。这个选项在你想对截屏图像做任意后期处理的时候十分实用。截屏的文件名/路径跟随于“$f”字符串之后。

$ scrot -e 'mv $f ~/screenshots'

via: http://xmodulo.com/2014/05/take-screenshot-command-line-linux.html

译者:alim0x 校对:wxy

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

Canonical宣布存在于Ubuntu 14.04 LTS,Ubuntu 13.10,Ubuntu 12.10,Ubuntu 12.04 LTS以及Ubuntu 10.04 LTS操作系统中的dpkg漏洞已经被修复。

Canonical公司刚刚放出dpkg包的一个更新,修复了这个用于所有Ubuntu版本的重要软件中的一个问题。

“我们发现这个问题出现在dpkg在解压源码包的时候,它会使dpkg不能正确地处理某些补丁。如果一位用户或一个自动化系统被欺骗而解压了特别修改过的源码包,远程攻击者就能修改目标解压路径之外的文件,导致拒绝服务攻击或潜在的获取系统权限的风险。”安全通知中这样写道。

想了解这个问题的更多细节描述,你可以查看Canonical的安全通知。Canonical建议用户尽快升级自己的系统。

如果你将各个发行版系统的libdpkg-perl包升级到最新版本即可修复这个漏洞。要安装这个更新,你只需运行更新管理器/软件更新器即可。

一般来说,一个普通的系统更新就可以完成所有必需的改动,用户不必重启PC或笔记本来应用这个补丁。这个更新同样可以在终端中实现,只需使用 apt-get dist-upgrade 命令。


via: http://news.softpedia.com/news/Dpkg-Vulnerabilities-Closed-in-Ubuntu-14-04-446282.shtml

译者:alim0x 校对:wxy

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

摘要:当被最新的OpenSSL安全问题困扰时,你最好解决它,虽然它并不像Heartbleed那样糟糕。

这一周对于开源的Secure Socket Layer (SSL)来说真是糟糕的一周。

首先,GnuTLS低调的宣称,存在一个不大但确实存在的缺陷。然后,大范围流行的OpenSSL被发现包含一个中间人漏洞。在Heartbleed漏洞惨剧后,OpenSSL该醒醒了。

这个漏洞,根据谷歌高级软件工程师Adam Langley描述,已经至少存在了15年时间。可惜Core Infrastructure Initiative(CII)提供了让更多的程序员来拯救OpenSSL的资金,却尚未来得及发挥作用。

也就是说这个漏洞依然是和Heartbleed漏洞一样糟糕。对于一些新手,攻击者需要在系统和浏览器或其它启用了SSL的客户端之间来利用这个安全漏洞。

尽管它只是可能被利用,你依然需要尽可能快的通过升级来解决这个漏洞。就像NTT Com Security的评估服务负责人Chris Camejo在邮件采访里说的,“这很糟糕,因为已经存在了这么长的时间,看起来传播范围相当广泛。”

他补充到:“如果利用它,攻击者可以解密流量。从SSL的设计目的看,这是一个很严重的问题。SSL被广泛地用来在网站和邮件中保护很多的密码,信用卡卡号和其他的敏感信息。”

在另外一个采访中,Red Hat的产品安全高级负责人Mark Cox详细深入地介绍了细节)。Cox说,OpenSSL已修正了一些安全缺陷,但是我们需要想办法告诉人们不要因为Heartbleed而陷入恐慌。

Cox解释说,Heartbleed漏洞在公布之前得到了修补,但利用此漏洞的消息在修补程序之前传开,因此在这个问题上招致了许多抱怨。最新的情况,已有七个安全问题得到了修补,但其中只有两项需要管理员和用户的关注。

Cox继续说道,第一个,是数据报传输层安全 (DTLS)的bug。到目前为止,还没有已知的攻击,但是存在针对它攻击成功的潜在性。

因此,虽然DTLS使用不广泛,如果您确实在使用它,它应尽快修补。

Cox然后说,“这个问题的实际上是中间人攻击”。实际上,真的要有个“在中间的”人,来利用易受攻击的服务器和客户端之间的漏洞。

但如果有人真的这样做到了,他们就能“绕过SSL并拿到原始数据...这是一个相当严重的问题”。

但是,如同从理论上讲任何人都可以利用Heartbleed漏洞来攻击SSL服务器。攻击并利用此漏洞需要能接触到客户端和服务器之间的通信网络。例如,成功的攻击可能需要架设一个假的公开Wi-Fi接入点,才能攻击到使用这个WIFI的Android版本的Chrome网络浏览器与未安装修补程序的Web服务器之间的SSL通讯。幸运的是,谷歌已经发布了更新的版本的浏览器,35.0.1916.141,以消除此问题。

Cox继续说,最易受攻击的系统是未安装修补程序的Android设备使用一个假的Wi-Fi接入点。Morrell补充说因为Android用户并没有被他们的手机供应商和电信公司重视,安全漏洞更新前他们可能会受漏洞影响相当长的时间。

幸运的是,如果他们用连接的服务器已经更新,他们也不会受到攻击。

OpenSSL安全社区自5月初以来已经知道这个问题。社区与Red Hat、其他主要Linux和开源社团和硬件供应商,要解决这个问题,不只是简单修补bug,而且要测试修复,以便他们可以确认漏洞已经修复,大家都已经安全了,而没有引入任何新的安全问题,并可在大多数 OpenSSL服务器和客户端的组合上工作。

现在,这个补丁已经有了,OpenSSL试着通过补丁解决安全缺陷,向公众表明对这些问题不必有任何不必要的恐慌。Cox补充说,主要的Linux供应商,如Red Hat和Ubuntu,已经有可用的修补程序。

所有的管理员都需要给服务器下载并安装补丁,而不是放任安全漏洞。


via: http://www.zdnet.com/new-openssl-breech-is-no-heartbleed-but-needs-to-be-taken-seriously-7000030273/

译者:lolipop 校对:wxy

本文由 LCTT 原创翻译,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中国 荣誉推出