Archive for category Unix

posix的特性——fork

记得之前曾经在一段Python中介绍过python的mulitprocess模块在windows的不兼容。其中提及了linux/Unix特有的fork方式,而windows无法实现导致的死循环。当时只是提到了一下,重点不同的关系,没有深究。

fork,顾名思义就是一把叉子,或者专业一点叫做复制叉。作为sys/type.h的一个函数,系统在每次调用fork()之后,将会以此为分叉,对进程本身进行复制,新的进程和旧进程有近乎完全一致的cpu时间和内存寄存器。

Read the rest of this entry »

, , ,

No Comments

分布式文件系统Moose FS的部署

近期随着云概念的热炒,什么都分布式。所谓分布式的文件系统就是把若干机器上的磁盘空间统一维护,成为一个逻辑上的独立空间,当然,还有对应的容错和压力分散解决方案。

这些天在研究分布式存储的东西,测试了比较出名的几个分布式文件系统。首先是淘宝的tfs,国人出品应该支持了,谁知TFS的支持库实在不敢恭维,换了几种操作系统,最终才在suse上安装成功。可作为一个绑死操作系统的应用,风险太大。接着是MogileFS,MogileFS是基于perl的,在安装了一系列的perl依赖包之后,MogileFS安装的很顺利,性能也能达到要求,问题就是在于我们实在不愿意去维护一个perl环境。最后剩下了MooseFS。

Read the rest of this entry »

, , ,

1 Comment

LAMP的常用扩展安装

之前已经弄过许多篇关于LAMP搭建的东西,都是基于最简单包的,这次说说几个比较常用扩展的安装:

Read the rest of this entry »

, , , , , , ,

No Comments

安装Subversion服务器

SVN虽说已经老了,可能逐步要被Git这类的新型版本控制服务软件代替了。但就单单兼容性和整合度来说,唯一与之媲美的只有更加古老的CVS了。

总之,没什么可以解释的,直接切入正题吧。服务器又是我近期一贯使用的Ubuntu Server。版本是1004 LTS。

$sudo apt-get update #迟早会像我一样条件反射的打这条命令的
$ sudo apt-get install subversion subversion-tools

Read the rest of this entry »

, , ,

No Comments

FreeBSD ZFS版本升级的问题

之前的文章,介绍FreeBSD下的ZFS。

FreeBSD 8.1比较吸引我的一个重要更新就是将ZFS从测试模块升级到了正式模块。这意味着Zfs已经足够的成熟和稳定了。

闲话不说,我这台主机是用zfs来做nfs服务器。刚升级到了FreeBSD 8.1 stable的版本。

Read the rest of this entry »

, , ,

No Comments

通过motd信息简化巡检操作

作为一个Unix系统的管理员,手工巡检几乎成了工作中一个重要的部分。这里不放使用Linux的motd通告信息实现简单的信息通告,至少能省去了不少手工命令的时间。

motd即Message Of ToDay,每天的信息。大部分的固定文本信息放置在/etc/motd下,如果没有你可以直接创建一个,然后修改其中的内容制作一个主机登录Banner以便于区分多台主机。对于Ubuntu来说,特别是启用了server中“landscope管理系统”后,这里没有效果,你需要修改的文件为/etc/motd.tail。

Read the rest of this entry »

, , , , , ,

No Comments

一个怪异的Cron问题

一个朋友向我咨询他遇到的一个问题。

Centos的操作系统,自然是主流应用的WWW。近期无缘无故的Cron失效,所有的任务都无法执行。多次重启主机,重启Cron服务均是如此。

起先我由于没有拿到控制台,怀疑是Cron经典的环境变量问题,修改了半天也是白忙。总算此兄开恩,将root的权限给了我。:)

Read the rest of this entry »

, , , , , ,

2 Comments

重新封包的python smtplib

这些天做了一个小的系统:将Oracle中的数据导出然后通过邮件直接发送给用户。
oracle部分主要通过sqlplus的报表格式导出成csv。邮件部分主要通过python读取csv然后再转译成html格式发送。

原理上很简单,到头来python的smtplib调试了半天才ok,为了方便,重新封了一下包,基本上的用途都在里面了。分享给各位!
提醒各位:不要用它来收发垃圾邮件!

Read the rest of this entry »

2 Comments

python multiprocessing的问题

multiprocessing的是Python2.6中新加入的模块,旨在用类似threading调用tread(线程)的方式使用process(进程)。

服务器中经常需要对大规模的数据进行压缩,传统使用单进程操作不足以体现8核CPU并发的威力。于是写了一个脚本用于多进程压缩。然而在windows的主机上进行调试,全都是死循环,以至于机器都无法进行响应。导入Linux主机,测试却通过。对脚本进行了精简如下:

Read the rest of this entry »

, , ,

2 Comments

再谈谈 Oracle+Sun=?

上次写过几篇东西,关于Oracle收购Sun的。Oracle+Sun=? , Sun的身前身后事

如今尘埃落定,www.sun.com 也已经被重定向到了www.oracle.com 。至少局外人看来,两家公司已经合并,而且至少不是失败的。

也就是在今天,得知oracle放出消息:今后Solaris不再免费提供,下载版本只提供90天的试用。如果使用,请买授权!

从个人角度上来说,我当然希望是提前一天庆祝了明天的节日。但事实上这并非是空穴来风。

Read the rest of this entry »

, , , , ,

No Comments