Linux

cfengine自动化管理的相关配置

Posted in Linux on 6月 29th, 2010 by 飘(piao2010) – 2 Comments

最近一段时间收集整理了cfengine相关应用和配置,感觉国内关于这方面的资料并不多,经测试可以成功运行,因此分享出来。
主要参考http://os.51cto.com/art/200711/60043.htm一文,结合实际情况做了一些调整和完善。

一、概述

cfengine是一个功能强大的自动化系统管理工具.引用其官网的说法”cfengine是一种 UNIX 管理工具,其目的是使简单的管理的任务自动化,使困难的任务变得较容易。
它的目标是使系统从任何状态收敛到一种理想状态。依照它的作者 Mark Burgess 所说,cfengine 总是使您的系统更接近于您所定义的配置; 它决不会使系统变得更糟。
比如说有少则几台多则成千上万台机器,现在需要临时的改变其一个配置,例如删掉某个帐号,停掉某个服务,一般我们只能不厌其烦的登到每一台机器上重复的完成这些动作,但是有了cfengine,一个命令就可以搞定了.
cfengine大概的功能有:
检查和配置网络接口
编辑系统和用户的文本文件
维护符号链接
检查和设置文件的权限
删除垃圾文件
检查重要文件和文件系统的存在
控制用户脚本和shell命令的执行
基于类的判定结构
进程管理 read more »

基于Linux的Subversion配置

Posted in Linux on 6月 17th, 2010 by 飘(piao2010) – Be the first to comment

花了一个下午时间学习整理了Subversion的配置,经测试可以正常使用。
一.安装
yum install subversion
二.配置
本系统采用为每个项目单独建一版本库的策略。配置文件,密码文件,访问控制文件等都放在版本库的conf目录下。
所以每次开始一个新项目都必须新建一个版本库,并重新配置各配置文件。还有很重要的一条,要求各组员重新配置客户端,包括服务器版本库路径,本地路径等信息。
1. 建立版本库目录(可建立多个,新建库后以下各项都需重新配置。注意区别安装目录与版本库目录,以下讲的都是版本库目录)

mkdir –p /home/svn/repos
#类似可以创建 mkdir –p /home/svn/repos2 /home/svn/repos3

2. 建立svn版本库(与上面目录对应)

svnadmin create /home/svn/repos

执行此命令后svn自动在repos目录下添加必须的配置文件.

注意:版本库不同于一般的文件夹, 直接在操作系统上新建文件无法被SVN识别, 必须使用import等命令将文件导入版本库.

此为svn内部指令,create用于新建版本库。请使用svn help查看详细说明。 read more »

Java读写串口程序

Posted in Linux, code on 6月 2nd, 2010 by 飘(piao2010) – 8 Comments

好久没更新博客了,自从hacker-piao.cn域名过期以后(懒得续费)感觉PV明显下降,主要原因:百度对新域名piao2010.com的收录几乎为零,主要的访问来源谷哥中国的网络又偏偏时好时坏。。。牢骚结束步入正题:毕业设计的一部分涉及对串口读写操作,所以分享一下相关的东东。

首先是下载配置commapi(对串口操作必须用到的jar包)
将下载的文件解压缩后,在javacomm20-win32commapi目录下有必需的三个文件comm.jar,javax.comm. properties和win32comm.dll。将文件comm.jar拷贝到%JAVA_HOME%jrelibext;文件 javax.comm. properties拷 read more »

DNS服务(bind9)配置

Posted in Linux on 3月 8th, 2010 by 飘(piao2010) – Be the first to comment

Bind是一款开放源码的DNS服务器软件,Bind由美国加州大学Berkeley分校开发和维护的,全名为Berkeley Internet Name Domain它是目前世界上使用最为广泛的DNS服务器软件,支持各种unix平台和windows平台。
环境:系统CentOS5
安装比较简单,yum -y install bind 当然也可以采用源码方式安装。
由于配置文件在chroot目录中不太方便,在/etc/named.conf建立一个符号链接指向/var/named/chroot/etc/named.conf read more »

手机短信天气预报自动发送程序

Posted in Linux, code on 2月 28th, 2010 by 飘(piao2010) – 23 Comments

今天闲来无聊想起网上流传已久的飞信API接口,加上MM说想要手机天气预报,平时又没空拿她手机安装软件,所以就有了写个手机短信天气预报程序的想法。

程序大致分成两个模块,(一)PHP程序采集中国气象网站的数据用正则表达式进行提取关键信息,这个以前的文章已经写过不再重复叙述。然后利用飞信的API接口向MM的手机发送天气预报数据。

(二)写一个shell脚本,实现访问PHP程序。考虑到网络偶尔出现故障,加入了sleep和while循环。
最后在crontab里面添加每天定时执行shell脚本即可。

部分关键代码如下: read more »

用iptables实现NAT方式上网

Posted in Linux on 1月 10th, 2010 by 飘(piao2010) – 3 Comments

在学校用了两年多的代理上网(Linux+OpenVPN+Squid),由于代理服务器(个人猜测应该是位于校园网DMZ)和寝室属于不同网络,一直没办法实现NAT方式上网。下午尝试着在VPN接入服务器的基础上进行NAT测试,但是失败了,如果在正常的网络环境中应该是比较容易实现的。以下部分开始转载:(根据自己的理解添加了中文注释)

This tutorial shows how to set up network-address-translation (NAT) on a Linux system with iptables rules so that the system can act as a gateway and provide internet access to multiple hosts on a local network using a single public IP address. This is achieved by rewriting the source and/or destination addresses of IP packets as they pass through the NAT system.
read more »