Posts Tagged ‘开源’
11
Jun

我用CentOS作为网站服务器的OS,我是这样备份我的网站的。

以下简称网站服务器为C,我的电脑是A。首先,在C上用一段shell script备份网站:

backup.sh

#! /bin/bash
# This script is to backup the website files and db

mysqldump mydb -pmypass >/var/www/mysite/mydump.sql

datestamp=`date +%Y%m%d`
filewww=”/home/myuser/backup/mysite_”"$datestamp”".zip”

zip -r $filewww /var/www/mysite

然后可以先运行一下这个script,看看结果是否符合预期。如果没问题,就可以将其加入到crontab了,每天自动运行。

59 3 * * * /bin/bash /home/myuser/backup.sh

这样C这边每天凌晨会备份一次并生成一个zip压缩包。但是把C的备份留在C就没意义了,我还要定期的把zip从C传到A。由于A不像C那样不间断运行的,所以如果从C向A传输就需要测试A是否在线,麻烦。不如让A取C上的zip。这就涉及到另一个问题,身份验证。

为一段自动运行的script提供password,我觉得不如使用public key验证来得专业,而且简单,两步就搞定:

ssh-keygen -t rsa

ssh-copy-id -i .ssh/id_rsa.pub myuser@C

这期间问到private key password时直接回车就行了;myuser@C的password还是需要输入的(否则……)。

下一步就是在A上写script,获取C上的备份,成功获取后删除C上的备份,并将A本机上超过一个月的备份删除。

backup-mysite.sh

#!/bin/bash
#by Raymond, Jun, 2009
#1, get backup files from …
#2, delete after a successful copy
scp myuser@C:/home/myuser/backup/*.zip /home/myuser/backup
if [ $? -eq 0 ]
then
ssh myuser@C rm /home/myuser/backup/*.zip
fi

#3, delete old backup files here
find /home/myuser/backup/*.zip -mtime +30 -exec rm {} \;

最后在把此script添加到A的crontab基本就没事了。过程类似上面的crontab,就偷懒不写了。注:懒是SA的美德。

, , , , ,

25
Feb

一个简单的select * 操作的Django方式:

首先配置urls.py

from django.conf.urls.defaults import *
from misc import views

urlpatterns = patterns(‘ ‘,
(r’^notes/$’, views.list_notes),
)

其中r’^notes/$’是regex,用于匹配url;views.list_notes是views.py中的list_notes 方法。

然后写list_notes:

def list_notes(request):
notes = Note.objects.order_by(‘-created_date’)
conduit = {
‘notes’: notes
}
return render_to_response(
‘misc/list.html’,
conduit,
context_instance = RequestContext(request),
)

其中conduit这个词来自Mass Effect :)

最后就是把上面的misc/list.html写出来:

{% extends “base.html” %}

{% block title %}List Notes – {{ block.super }}{% endblock %}

{% block body %}
{% if notes %}
<ul>
{% for note in notes %}
<li>{{ note.created_date }} : {{ note.message }}</li>
{% endfor %}
</ul>
{% else %}
<p>No notes yet.</p>
{% endif %}
{% endblock %}

这样用浏览器访问类似http://localhost:8000/app/notes的url时,全部notes应该就列出来了,并按时间倒序排列。

, , ,

19
Oct

昨天我突然想看看MS Office的Volume License是怎么个规则,于是我去下载常见问题的文档。结果很滑稽:此FAQ文档是MS Office 2007的DOCX格式!看来微软认为我应该先买Office,然后再问问题。

好在OpenOffice.org 3.0(简称OOo)刚刚发布,支持MS Office 07格式。于是我用OOo看了MS的FAQ:

补充:OOo3安装包只有140MB,功能一点不差!包括以下模块:

  • OOo Base,对应MS Access数据库
  • OOo Calc,对应MS Excel电子表格
  • OOo Draw,对应MS Visio流程图
  • OOo Impress,对应MS PowerPoint幻灯片
  • OOo Math,好像MS Office没有,是写数学公式的工具
  • OOo Writer,对应MS Word字处理

希望能在公司推广开来

,

07
Mar

参考链接:

http://www.xxlinux.com/linux/article/development/soft/20071126/12656.html

https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/151585

http://www.virtualbox.org/ticket/747

http://forums.virtualbox.org/viewtopic.php?p=981&sid=6f27866dd1b767a59739ce46d452cc9e

也许是VirtualBox还不够成熟,正常安装好之后,无法把USB设备指派给Guest系统。参考以上链接内的方法,我勉强把一个U盘给接上了,可以交换文件,但是其他USB设备例如手机、移动硬盘还是连不上。

希望VirtualBox以后解决这个问题。

, , , , ,

25
Feb

自从上次回到Windows之后,虽然用上了我喜欢的紫光拼音,升级到了漂亮的Live Messenger8.5,但是我又不得不面对缓慢的开机以及各种可能的安全威胁了。前几天看新闻,VirtualBox1.5.6发行了!而对于我而言,却是第一次的想在Ubuntu上面跑一个Windows XP。

安装很简单,只要按照版本和平台下载正确的VirtualBox,再运行安装文件即可。然后选择Guest系统:Windows XP,然后为其分配内存、磁盘空间。我的设置是内存640MB、磁盘10GB。 一点需要注意的就是内存一定要够用,既要保证Host系统够用,也要保证Guest不会挨饿。好在现在内存不贵。


初步设置完成, 记得把CDROM挂上,这样就可以安装WinXP了。当然,你也可以把一个WinXP的安装光盘镜像给虚拟机挂上。


第一次启动成功了!WinXP照例提示你,把屏幕分辨率改为800×600。


一些系统的属性和状态。


将Ubuntu系统里的一个文件夹共享给Windows。可以选择临时、永久、只读、可写等等。


记得安装VirtualBox工具包,这样你的鼠标就可以自由进出这个Windows了。


最后装上了Lotus Notes for  Windows  7。任务完成。

关于版权,为了虚拟机而买一套正版WinXP似乎有点烧钱了。我装的是盗版的,不过随笔记本带了一份正版了,因此也说得过去了吧。

, , , ,