Dokuwiki消息两则

第一条。新版本Angua发布了,2012-01-25的。http://www.splitbrain.org/projects/dokuwiki

第二条。Rincewind发布了修补版本(Hotfix Release)。如果在使用Rincewind,并且不打算升级到Angua,推荐更新。下载地址同上,选择 dokuwiki-2011-05-25b.tgz “Rincewind”

PmWiki小试

要在学校给的空间里做个小站点,只有102MB的配额,只支持用cgi方式运行PHP、perl、JAVA。用Dokuwiki太过占地方了,PmWiki解压后则只有1.3MB,这是我决定尝试它的最重要原因。

整体在功能上的感受非常好,尽管很小,但定制性很好,Wiki语法也较为完善。一些Dokuwiki中需要插件完成的功能,在PmWiki中可以直接实现。

PmWiki通过Wikistyles,可以对某段内容应用特定样式,例如改变字体颜色、背景、添加边框等等。Dokuwiki不使用插件,通过标签也可以实现,不过感觉PmWiki更方便点。PmWiki里自带的pagelist,可定制性非常好。Dokuwiki需要插件实现。

PmWiki通过group实现归类,有点类似Dokuwiki的Namespace,但是只能有一级。虽然PmWiki称这么做是有合理理由的,不过还是不太习惯。

PmWiki同样有Blog插件,可以改造成Blog。没有尝试,因为没这个需要。

上手可能不太容易,因为它的配置文件全部需要手动配置,也就是直接修改local/config.php文件。文档看得略微头疼。

Pacman 4 更新问题

更新的时候出现提醒:

pacman package-query: requires pacman<3.6

原来是Pacman 4进入core了(http://www.archlinux.org/news/pacman-4-moves-to-core/),而package-query需要3.6版本。

更新到pacman 4后还涉及签名问题。总结一下过程。

更新到 pacman 4

yaourt和package-query会让你没法更新。方法有两个:

第一种:

自己没试过,来自Arch Wiki

如果你加了archlinux.fr的源,修改/etc/pacman.conf,将

SyncFirst   = pacman

改为

SyncFirst   = pacman yaourt package-query

第二种:

先删掉它们,之后再安装

sudo pacman -Rsn yaourt package-query

更新

sudo pacman -Syu

签名

参考:

http://www.archlinuxcn.org/viewtopic.php?f=27&t=549

https://wiki.archlinux.org/index.php/Pacman-key

升级后4.0的配置文件在/etc/pacman.conf.pacnew,打开编辑。修改SigLevel为

SigLevel = Required DatabaseOptional TrustedOnly

初始化密钥环

sudo pacman-key --init

导入与设置 Master key

如果导入key总是不成功,修改/etc/pacman.d/gnupg/gpg.conf,将keyserver一栏改为

keyserver hkp://pgp.mit.edu:11371

Master key在这里列出。你也可以参考下别的地方的,互相印证一下。

以下几条命令均需root权限。

首先导入所有5个key。其中<keyid>用上面查到的值代替

for key in <keyid> <keyid> <keyid> <keyid> <keyid>; do
    sudo pacman-key --recv-keys $key
    sudo pacman-key --lsign-key $key
    printf 'trust\n3\nquit\n' | sudo gpg --homedir /etc/pacman.d/gnupg/ \
        --no-permission-warning --command-fd 0 --edit-key $key
done

这样虽然方便,但不安全。需要检查下fingerprint。

sudo gpg --homedir /etc/pacman.d/gnupg/ --fingerprint <keyid> <keyid> <keyid> <keyid> <keyid>

将显示出的fingerprint和网页里给的比对一下,确认一致

导入开发者和信任用户的key

如前,需要root权限。

curl https://www.archlinux.org/{developers,trustedusers}/ |
awk -F\" '(/pgp.mit.edu/) {sub(/.*search=0x/,"");print $1}' |
xargs sudo pacman-key --recv-keys

更新系统与其他

需要覆盖pacman的配置。可以先做个备份

sudo mv /etc/pacman.conf /etc/pacman.conf.backup
sudo mv /etc/pacman.conf.pacnew /etc/pacman.conf

更新系统

sudo pacman -Syu

如果之前删除了yaourt,现在可以重新安装。在/etc/pacman.conf里添加archlinuxfr源

[archlinuxfr]
SigLevel = PackageOptional
Server = http://repo.archlinux.fr/$arch

上面的SigLevel用了PackageOptional,因为里面的包似乎没有签名。

Ubuntu吐嘈

回家怕麻烦,没带自己的电脑。家里一个旧电脑,本来装的Ubuntu,妈妈说了她要用,XP+MS Office 2003必须,要我重装。完成任务后就打算再装上Ubuntu 12.04。反正只用几天,不怕当小白。

先是装了desktop版,unity实在不想用,装了gnome-shell后删除unity。然后……lightdm进不去了,Orz…好吧,我还是换gdm。

因为依赖关系删掉了一些软件,又重新装回来,发现nautilus竟然非要依赖libunity9。这什么啊。

我绑定了快捷键打开xterm,结果发现没图标,overview里明明有啊。好吧,其实这样做就有了

sudo mv /usr/share/applications/debian-xterm.desktop /usr/share/applications/xterm.desktop

简单的Linux作业管理——simpleJobM

我的要求很简单,用nohup让程序在后台运行,完成后给邮箱发个邮件就行了。搜索了一些管理软件,没怎么看明白如何用,似乎还涉及并行啊,节点管理一类。于是自己写了个。

地址:https://github.com/lainme/simpleJobM

需要python3,主要是因为那个print函数。其实稍微改下python2也可以,毕竟没几个print。1)

基本功能就像一开始说的。发邮件用的sendmail,或许以后会改成可以自定义SMTP服务器,谁知道呢。

参数说明

获取帮助

./simpleJobM.py -h

运行一个命令

./simpleJobM.py -r 命令

这里使用nohup来运行命令,并在结束后向指定邮箱发送一封邮件(run.py中定义)。输出结果定向到以开始时间为文件名的文件中,存放于running目录。运行结束后移动到finished目录

列出所有作业

./simpleJobM.py -l [running/finished]

列出所有正在运行的作业,或者已经完成的作业。

删除一个正在运行的作业

./simpleJobM.py -d ID

根据ID进行删除,ID可以通过-l来获取

清除已完成作业的目录

./simpleJobM.py -c

这会删除finished目录

1) 根据依云的Comment加了 from __future__ import print_function