linux中国_ 发布的文章

问题 我试着在[某某 Linux 发行版]上运行一个 Python 应用,但是我得到了这个错误“ImportError: No module named wxversion.”。我怎样才能解决 Python 程序中的这个错误呢?
Looking for python... 2.7.9 - Traceback (most recent call last):
  File "/home/dev/playonlinux/python/check_python.py", line 1, in 
    import os, wxversion
ImportError: No module named wxversion
failed tests

该错误表明,你的Python应用是基于GUI的,依赖于一个名为wxPython的缺失模块。wxPython是一个用于wxWidgets GUI库的Python扩展模块,普遍被C++程序员用来设计GUI应用。该wxPython扩展允许Python开发者在任何Python应用中方便地设计和整合GUI。

摇解决这个 import 错误,你需要在你的 Linux 上安装 wxPython,如下:

安装wxPython到Debian,Ubuntu或Linux Mint

$ sudo apt-get install python-wxgtk2.8

安装wxPython到Fedora

$ sudo yum install wxPython

安装wxPython到CentOS/RHEL

wxPython可以在CentOS/RHEL的EPEL仓库中获取到,而基本仓库中则没有。因此,首先要在你的系统中启用EPEL仓库,然后使用yum命令来安装。

$ sudo yum install wxPython 

安装wxPython到Arch Linux

$ sudo pacman -S wxpython 

安装wxPython到Gentoo

$ emerge wxPython 

via: http://ask.xmodulo.com/importerror-no-module-named-wxversion.html

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

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

按照预期计划, LibreOffice 5 开源办公套件于今日发布。

LibreOffice 5.0 带来了许多新功能,从 首次支持 GTK3 和 Wayland 到为支持移动和云端所做的基础工作,以及对 spreadsheets 的改进、OpenGL 渲染的提升等等。

你可以在 LibreOffice 5.0 的开发者 Michael Meeks 的博客读到更多的底层工作。现在就可以在 LibreOffice.org 下载支持所有主要平台的 LibreOffice 了。

下载

如果需要,还可以下载简体中文及其他语言的语言包。

在我们之前的文章中,我们介绍了什么是 LVM 以及能用 LVM 做什么,今天我们会给你介绍一些 LVM 的主要管理工具,使得你在设置和扩展安装时更游刃有余。

正如之前所述,LVM 是介于你的操作系统和物理硬盘驱动器之间的抽象层。这意味着你的物理硬盘驱动器和分区不再依赖于他们所在的硬盘驱动和分区。而是你的操作系统所见的硬盘驱动和分区可以是由任意数目的独立硬盘汇集而成的或是一个软件磁盘阵列。

要管理 LVM,这里有很多可用的 GUI 工具,但要真正理解 LVM 配置发生的事情,最好要知道一些命令行工具。这当你在一个服务器或不提供 GUI 工具的发行版上管理 LVM 时尤为有用。

LVM 的大部分命令和彼此都非常相似。每个可用的命令都由以下其中之一开头:

  • Physical Volume (物理卷) = pv
  • Volume Group (卷组)= vg
  • Logical Volume (逻辑卷)= lv

物理卷命令用于在卷组中添加或删除硬盘驱动。卷组命令用于为你的逻辑卷操作更改显示的物理分区抽象集。逻辑卷命令会以分区形式显示卷组,使得你的操作系统能使用指定的空间。

可下载的 LVM 备忘单

为了帮助你理解每个前缀可用的命令,我们制作了一个备忘单。我们会在该文章中介绍一些命令,但仍有很多你可用但没有介绍到的命令。

该列表中的所有命令都要以 root 身份运行,因为你更改的是会影响整个机器系统级设置。

如何查看当前 LVM 信息

你首先需要做的事情是检查你的 LVM 设置。s 和 display 命令可以和物理卷(pv)、卷组(vg)以及逻辑卷(lv)一起使用,是一个找出当前设置的好起点。

display 命令会格式化输出信息,因此比 s 命令更易于理解。对每个命令你会看到名称和 pv/vg 的路径,它还会给出空闲和已使用空间的信息。

最重要的信息是 PV 名称和 VG 名称。用这两部分信息我们可以继续进行 LVM 设置。

创建一个逻辑卷

逻辑卷是你的操作系统在 LVM 中使用的分区。创建一个逻辑卷,首先需要拥有一个物理卷和卷组。下面是创建一个新的逻辑卷所需要的全部命令。

创建物理卷

我们会从一个全新的没有任何分区和信息的硬盘开始。首先找出你将要使用的磁盘。(/dev/sda, sdb, 等)

注意:记住所有的命令都要以 root 身份运行或者在命令前面添加 'sudo' 。
fdisk -l

如果之前你的硬盘从未格式化或分区过,在 fdisk 的输出中你很可能看到类似下面的信息。这完全正常,因为我们会在下面的步骤中创建需要的分区。

我们的新磁盘位置是 /dev/sdb,让我们用 fdisk 命令在磁盘上创建一个新的分区。

这里有大量能创建新分区的 GUI 工具,包括 Gparted,但由于我们已经打开了终端,我们将使用 fdisk 命令创建需要的分区。

在终端中输入以下命令:

fdisk /dev/sdb

这会使你进入到一个特殊的 fdisk 提示符中。

以指定的顺序输入命令创建一个使用新硬盘 100% 空间的主分区并为 LVM 做好了准备。如果你需要更改分区的大小或想要多个分区,我建议使用 GParted 或自己了解一下关于 fdisk 命令的使用。

警告:下面的步骤会格式化你的硬盘驱动。确保在进行下面步骤之前你的硬盘驱动中没有任何有用的信息。

  • n = 创建新分区
  • p = 创建主分区
  • 1 = 成为磁盘上的首个分区

输入 enter 键两次以接受默认的第一个和最后一个柱面。

用下面的命令准备 LVM 所使用的分区。

  • t = 更改分区类型
  • 8e = 更改为 LVM 分区类型

核实并将信息写入硬盘。

  • p = 查看分区设置使得在写入更改到磁盘之前可以回看
  • w = 写入更改到磁盘

运行这些命令之后,会退出 fdisk 提示符并返回到终端的 bash 提示符中。

输入 pvcreate /dev/sdb1 在刚创建的分区上新建一个 LVM 物理卷。

你也许会问为什么我们不用一个文件系统格式化分区,不用担心,该步骤在后面。

创建卷组

现在我们有了一个指定的分区和创建好的物理卷,我们需要创建一个卷组。很幸运这只需要一个命令。

vgcreate vgpool /dev/sdb1

vgpool 是新创建的卷组的名称。你可以使用任何你喜欢的名称,但建议标签以 vg 开头,以便后面你使用它时能意识到这是一个卷组。

创建逻辑卷

创建 LVM 将使用的逻辑卷:

lvcreate -L 3G -n lvstuff vgpool

-L 命令指定逻辑卷的大小,在该情况中是 3 GB,-n 命令指定卷的名称。 指定 vgpool 以便 lvcreate 命令知道从什么卷获取空间。

格式化并挂载逻辑卷

最后一步是用一个文件系统格式化新的逻辑卷。如果你需要选择一个 Linux 文件系统的帮助,请阅读 如果根据需要选取最合适的文件系统

mkfs -t ext3 /dev/vgpool/lvstuff

创建挂载点并将卷挂载到你可以使用的地方。

mkdir /mnt/stuff
mount -t ext3 /dev/vgpool/lvstuff /mnt/stuff

重新设置逻辑卷大小

逻辑卷的一个好处是你能使你的存储物理地变大或变小,而不需要移动所有东西到一个更大的硬盘。另外,你可以添加新的硬盘并同时扩展你的卷组。或者如果你有一个不使用的硬盘,你可以从卷组中移除它使得逻辑卷变小。

这里有三个用于使物理卷、卷组和逻辑卷变大或变小的基础工具。

注意:这些命令中的每个都要以 pv、vg 或 lv 开头,取决于你的工作对象。

  • resize – 能压缩或扩展物理卷和逻辑卷,但卷组不能
  • extend – 能使卷组和逻辑卷变大但不能变小
  • reduce – 能使卷组和逻辑卷变小但不能变大

让我们来看一个如何向刚创建的逻辑卷 "lvstuff" 添加新硬盘驱动的例子。

安装并格式化新硬盘驱动

按照上面创建新分区并更改分区类型为 LVM(8e) 的步骤安装一个新硬盘驱动。然后用 pvcreate 命令创建一个 LVM 能识别的物理卷。

添加新硬盘到卷组

要添加新的硬盘到一个卷组,你只需要知道你的新分区,在我们的例子中是 /dev/sdc1,以及想要添加到的卷组的名称。

这会添加新物理卷到已存在的卷组中。

vgextend vgpool /dev/sdc1

扩展逻辑卷

调整逻辑卷的大小,我们需要指出的是通过大小而不是设备来扩展。在我们的例子中,我们会添加一个 8GB 的硬盘驱动到我们的 3GB vgpool。我们可以用 lvextend 或 lvresize 命令使该空间可用。

lvextend -L8G /dev/vgpool/lvstuff

当这个命令工作的时候你会发现它实际上重新设置逻辑卷大小为 8GB 而不是我们期望的将 8GB 添加到已存在的卷上。要添加剩余的可用 3GB 你需要用下面的命令。

lvextend -L+3G /dev/vgpool/lvstuff

现在我们的逻辑卷已经是 11GB 大小了。

扩展文件系统

逻辑卷是 11GB 大小但是上面的文件系统仍然只有 3GB。要使文件系统使用整个的 11GB 可用空间你需要用 resize2fs 命令。你只需要指定 resize2fs 到 11GB 逻辑卷它就会帮你完成其余的工作。

resize2fs /dev/vgpool/lvstuff

注意:如果你使用除 ext3/4 之外的文件系统,请查看调整你的文件系统大小的工具。

压缩逻辑卷

如果你想从卷组中移除一个硬盘驱动你可以按照上面的步骤反向操作,并用 lvreduce 或 vgreduce 命令代替。

  1. 调整文件系统大小 (调整之前确保已经移动文件到硬盘驱动安全的地方)
  2. 减小逻辑卷 (除了 + 可以扩展大小,你也可以用 - 压缩大小)
  3. 用 vgreduce 从卷组中移除硬盘

备份逻辑卷

快照是一些新的高级文件系统提供的功能,但是 ext3/4 文件系统并没有快照的功能。LVM 快照最棒的是你的文件系统永不掉线,你可以拥有你想要的任何大小而不需要额外的硬盘空间。

LVM 获取快照的时候,会有一张和逻辑卷完全相同的“照片”,该“照片”可以用于在不同的硬盘上进行备份。生成一个备份的时候,任何需要添加到逻辑卷的新信息会如往常一样写入磁盘,但会跟踪更改使得原始快照永远不会损毁。

要创建一个快照,我们需要创建拥有足够空闲空间的逻辑卷,用于保存我们备份的时候会写入该逻辑卷的任何新信息。如果驱动并不是经常写入,你可以使用很小的一个存储空间。备份完成的时候我们只需要移除临时逻辑卷,原始逻辑卷会和往常一样。

创建新快照

创建 lvstuff 的快照,用带 -s 标记的 lvcreate 命令。

lvcreate -L512M -s -n lvstuffbackup /dev/vgpool/lvstuff

这里我们创建了一个只有 512MB 的逻辑卷,因为该硬盘实际上并不会使用。512MB 的空间会保存备份时产生的任何新数据。

挂载新快照

和之前一样,我们需要创建一个挂载点并挂载新快照,然后才能从中复制文件。

mkdir /mnt/lvstuffbackup
mount /dev/vgpool/lvstuffbackup /mnt/lvstuffbackup

复制快照和删除逻辑卷

你剩下需要做的是从 /mnt/lvstuffbackup/ 中复制所有文件到一个外部的硬盘或者打包所有文件到一个文件。

注意:tar -c 会创建一个归档文件,-f 要指出归档文件的名称和路径。要获取 tar 命令的帮助信息,可以在终端中输入 man tar。

tar -cf /home/rothgar/Backup/lvstuff-ss /mnt/lvstuffbackup/

记住备份时候写到 lvstuff 的所有文件都会在我们之前创建的临时逻辑卷中被跟踪。确保备份的时候你有足够的空闲空间。

备份完成后,卸载卷并移除临时快照。

umount /mnt/lvstuffbackup
lvremove /dev/vgpool/lvstuffbackup/

删除逻辑卷

要删除一个逻辑卷,你首先需要确保卷已经卸载,然后你可以用 lvremove 命令删除它。逻辑卷删除后你可以移除卷组,卷组删除后你可以删除物理卷。

这是所有移除我们创建的卷和组的命令。

umount /mnt/lvstuff
lvremove /dev/vgpool/lvstuff
vgremove vgpool
pvremove /dev/sdb1 /dev/sdc1

这些已经囊括了关于 LVM 你需要了解的大部分知识。如果你有任何关于这些讨论的经验,请在下面的评论框中和大家分享。


via: http://www.howtogeek.com/howto/40702/how-to-manage-and-use-lvm-logical-volume-management-in-ubuntu/

译者:ictlyh 校对:wxy

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

备受争议的 Linux 初始化系统和服务管理器 Systemd 的创始人 Lennart Poettering 宣布即将召开首届systemd会议 :systemd.conf,它将于11月5日到7日在德国柏林举办。

systemd 项目是当今大多数 Linux 发行版的核心部件。在 systemd.conf 2015 上,将讨论 Linux 核心平台的现状和发展。参会者主要是开发者、发行版打包人员等。会议还包括一个黑客节活动。

本次大会的网址是: https://systemd.events/

注册地址: https://systemd.events/systemdconf-2015/registration ,在 8/16 前注册会有折扣。

本次大会也在征集演讲: https://systemd.events/systemdconf-2015/add/session

无论是体积还是价值,数据都在不断增长。快速而可靠地备份和恢复数据正变得越来越重要。社会已经适应了技术的广泛使用,并懂得了如何依靠电脑和移动设备,但很少有人能够面对丢失重要数据的现实。在遭受数据损失的公司中,30% 的公司将在一年内损失一半市值,70% 的公司将在五年内停止交易。这更加凸显了数据的价值。

随着数据在体积上的增长,提高存储利用率尤为重要。从计算机的角度说,数据去重是一种特别的数据压缩技术,因为它可以消除重复数据的拷贝,所以这个技术可以提高存储利用率。

数据并不仅仅只有其创造者感兴趣。政府、竞争者、犯罪分子、偷窥者可能都热衷于获取你的数据。他们或许想偷取你的数据,从你那里进行敲诈,或看你正在做什么。因此,对于保护你的数据,加密是非常必要的。

所以,解决方法是我们需要一个可以去重的加密备份软件。

对于所有的用户而言,做文件备份是一件非常必要的事,至今为止许多用户还没有采取足够的措施来保护他们的数据。一台电脑不论是工作在一个合作的环境中,还是供私人使用,机器的硬盘可能在没有任何警告的情况下挂掉。另外,有些数据丢失可能是人为的错误所引发的。如果没有做经常性的备份,数据也可能不可避免地丢失,即使请了专业的数据恢复公司来帮忙。

这篇文章将对 6 个去重加密备份工具进行简要的介绍。

Attic

Attic 是一个可用于去重、加密,验证完整性的压缩备份程序,它是用 Python 写的。Attic 的主要目标是提供一个高效且安全的方式来备份数据。Attic 使用的数据去重技术使得它适用于每日备份,因为只需存储改变的数据。

其特点有:

  • 易用
  • 可高效利用存储空间,通过检查冗余的数据,对可变块大小的去重可以减少存储所用的空间
  • 可选的数据加密,使用 256 位的 AES 加密算法。数据的完整性和可靠性使用 HMAC-SHA256 来校验
  • 使用 SDSH 来进行离线备份
  • 备份可作为文件系统来挂载

网站: attic-backup.org

Borg

Borg 是 Attic 的一个分支。它是一个安全的开源备份程序,被设计用来高效地存储那些新的或修改过的数据。

Borg 的主要目标是提供一个高效、安全的方式来存储数据。Borg 使用的数据去重技术使得它适用于每日备份,因为只需存储改变的数据。认证加密使得它适用于存储在不完全可信的位置。

Borg 由 Python 写成。Borg 于 2015 年 5 月被创造出来,是为了解决让新的代码或重大的改变带入 Attic 的困难。

其特点包括:

  • 易用
  • 可高效利用存储空间,通过检查冗余的数据,对可变块大小的去重被用来减少存储所用的空间
  • 可选的数据加密,使用 256 位的 AES 加密算法。数据的完整性和可靠性使用 HMAC-SHA256 来校验
  • 使用 SDSH 来进行离线备份
  • 备份可作为文件系统来挂载

Borg 与 Attic 不兼容。

网站: borgbackup.github.io/borgbackup

Obnam

Obnam (OBligatory NAMe) 是一个易用、安全的基于 Python 的备份程序。备份可被存储在本地硬盘或通过 SSH SFTP 协议存储到网上。若使用了备份服务器,它并不需要任何特殊的软件,只需要使用 SSH 即可。

Obnam 通过将数据分成数据块,并单独存储它们来达到去重的目的,每次通过增量备份来生成备份,每次备份的生成就像是一次新的快照,但事实上是真正的增量备份。Obnam 由 Lars Wirzenius 开发。

其特点有:

  • 易用
  • 快照备份
  • 数据去重,跨文件,然后生成备份
  • 可使用 GnuPG 来加密备份
  • 向一个单独的仓库中备份多个客户端的数据
  • 备份检查点 (创建一个保存点,以每 100MB 或其他容量)
  • 包含多个选项来调整性能,包括调整 lru-size 或 upload-queue-size
  • 支持 MD5 校验算法来识别重复的数据块
  • 通过 SFTP 将备份存储到一个服务器上
  • 同时支持 push(即在客户端上运行) 和 pull(即在服务器上运行)

网站: obnam.org

Duplicity

Duplicity 以 tar 文件格式增量备份文件和目录,并使用 GnuPG 来进行加密,同时将它们上传到远程(或本地)的文件服务器上。它可以使用 ssh/scp、本地文件获取、rsync、 ftp 和 Amazon S3 等来传递数据。

因为 duplicity 使用了 librsync, 增量存档可以高效地利用存储空间,且只记录自从上次备份依赖改变的那部分文件。由于该软件使用 GnuPG 来加密或对这些归档文件进行进行签名,这使得它们免于服务器的监视或修改。

当前 duplicity 支持备份删除的文件,全部的 unix 权限,目录,符号链接, fifo 等。

duplicity 软件包还包含有 rdiffdir 工具。 Rdiffdir 是 librsync 的 rdiff 针对目录的扩展。它可以用来生成对目录的签名和差异,对普通文件也有效。

其特点有:

  • 使用简单
  • 对归档进行加密和签名(使用 GnuPG)
  • 高效使用带宽和存储空间,使用 rsync 的算法
  • 标准的文件格式
  • 可选择多种远程协议

    • 本地存储
    • scp/ssh
    • ftp
    • rsync
    • HSI
    • WebDAV
    • Amazon S3

网站: duplicity.nongnu.org

ZBackup

ZBackup 是一个通用的全局去重备份工具。

其特点包括:

  • 对存储数据并行进行 LZMA 或 LZO 压缩,在一个仓库中,你还可以混合使用 LZMA 和 LZO
  • 内置对存储数据的 AES 加密
  • 能够删除旧的备份数据
  • 可以使用 64 位的滚动哈希算法,使得文件冲突的数量几乎为零
  • 仓库中存储的文件是不可修改的,已备份的文件不会被修改。
  • 用 C++ 写成,只需少量的库文件依赖
  • 在生成环境中可以安全使用
  • 可以在不同仓库中进行数据交换而不必再进行压缩
  • 使用 64 位改进型 Rabin-Karp 滚动哈希算法

网站: zbackup.org

bup

bup 是一个用 Python 写的备份程序,其名称是 "backup" 的缩写。基于 git packfile 文件格式, bup 提供了一个高效的方式来备份一个系统,提供快速的增量备份和全局去重(在文件中或文件里,甚至包括虚拟机镜像)。

bup 在 LGPL 版本 2 协议下发行。

其特点包括:

  • 全局去重 (在文件之间或文件内部,甚至包括虚拟机镜像)
  • 使用一个滚动的校验和算法(类似于 rsync) 来将大文件分为多个数据块
  • 使用来自 git 的 packfile 文件格式
  • 直接写入 packfile 文件,以此提供快速的增量备份
  • 可以使用 "par2" 冗余来恢复冲突的备份
  • 可以作为一个 FUSE 文件系统来挂载你的 bup 仓库

网站: bup.github.io


via: http://www.linuxlinks.com/article/20150628060000607/BackupTools.html

译者:FSSlc 校对:wxy

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

虽然 Red Hat 已经发布了 RHEL 7.1,但是对 RHEL 6 系列的更新继续进行。最近,RedHat 发布了 RHEL 6 的最新更新版本 RHEL 6.7。

发布公告列出了主要的改进:

  • clufter:一个分析和转换集群配置格式的工具,clufter 可以让系统管理员更新现有的 HA 配置来运行 RedHat 最新的HA 工具。
  • LVM Cache 已经全部支持了,它允许用户在有限的成本下,最大化基于 SSD 的存储的性能。

发行备注中包括了更多细节和已知问题的列表。此外还提供一系列的更多细节的技术备注,包括软件包的改变和安全建议。