关于作者

笔名:ccat
地区: 北京-海淀
作者相册

日历 

快速登录

+ 用户名:
+ 密 码:

在线留言

友情Blog

访问统计:312


自由小空间

 

日志

24日进展

写了一个小程序,送给一个需要的人。

学会了几样东西,按钮、窗体、文件的打开操作:)

现在头疼、流鼻涕、浑身没力气:(

- 作者: ccat 2006年07月24日, 星期一 09:59  回复(0) |  引用(0)

7月21日进展
现在通过c++builder基础书籍已经学会了将char to int 的方法,然后进一步的拆分工作已经完成。
 
计划是:
 
文件-〉Anstring->char->Int->Output
A9           A9                 A + 9       169    0x169
 
现在还剩下最后一个部分这样基本就可以实现anstring->everyone的转变。应该马上就可以着手写正式的通信程序了。等了很久,还是等到了。

- 作者: ccat 2006年07月22日, 星期六 07:32  回复(0) |  引用(0)

已锁定
此日志为草稿状态,请同作者联系,发送短消息,如果你的身份符合作者的要求,点击此处可以进行浏览

- 作者: ccat 2006年01月30日, 星期一 10:21  回复(1) |  引用(0)

实验室的规划
摘要:lvs 查看全文

- 作者: ccat 2005年01月24日, 星期一 18:02  回复(0) |  引用(0)

升级日记


    近来FC2火爆各大论坛,看来也得需要尝尝2.6的魅力了。从9.0升级到FC2需要一点点勇气,因为我的ftp上装满了数据。于是小心翼翼的安装了一台DVD(因为FC2带一张DVD安装光盘,省却换盘的麻烦)。

    一路next然后就期待明天的到来,我从晚上开始升级,估计凌晨3点左右应该就可以结束了。

    第二天,起床跑到实验室。一看,很奇怪,系统已经重新启动过了。当时很匆忙,赶紧检测一下samba,ftp,apache,都很正常。

    于是我很久以来的梦想就是装个数据库看看,赶紧下在个论坛,放到/var/www下。结果一测试还是不行。看来数据库还是不是那么好用。
   
     更大的问题被发现出来,我想更新到MYSQL4.0但是系统说失败需要卸载现在的数据库才可以,但是用rpm去卸载结果没有发现相关的MYSQL数据包,为了能跑sql我不得不重新安装fc2。用新版本的兼容性来协调数据库的问题。

      又花了一夜来把60G的数据拷贝到别的计算机上。
      次日上午,开始重新安装FC2
      安装好后,花了两天的时间才把配置程序重新配置好。开始往回拷贝数据。

经验:
    经过分析,估计第一次升级安装的时候是停过一次电,因为FC2安装结束后会自动停在推出界面上,同时光盘探出。停电后造成数据包升级不完整。所以数据口有问题。
    尽量用升级安装,不然恢复配置文件太麻烦了。

- 作者: ccat 2004年12月14日, 星期二 08:59  回复(0) |  引用(0)

升级日记-使用lvm移动数据
 今天雾气沉沉,北京的天空看来是无法达到280个蓝天的标准了。因为前几日从redhat9.0升级到fc2把mysql搞混乱了,我现在不得不重装系统。
  可是40G的ftp内容如何转移?幸好当初我用了lvm。
  /usr和/var都在/dev/hda这块硬盘上,而我又安装了一块硬盘在/dev/hdb上,这怎么可以?现在服务器上最繁重的IO操作分别是 /var, /home,必须把跑ftp的/var挪到/dev/hdb这块空闲的硬盘上去,有效分担IO负载。

   嘿嘿,不过要想在线远程操作服务器来挪分区,没有LVM的话,根本就是不可能的任务。有了LVM,一切变得简单到只需要一条命令而已。

redsaga:~ # pvmove -n /dev/volume/var /dev/hda  /dev/hdb

我不需要停止任何服务,网站仍然在正常运转,不过底层的分区数据已经在以每秒4MB的速度开始搬家了。

40GB的数据搬家并不需要很久,大约需要2-3个小时

已经搬好了
/var分区已经被挪到了/dev/sdc这块硬盘上来了。

别小看这个功能,对于一个7×24×365运行的网站服务器来说,把服务器停止下来进行分区拷贝,是不可以容忍的事情,那将会造成很大的经济损失。想像一下如果你用的是Windows操作系统,你有一块硬盘,分了 C盘和D盘,后来你又热插了一块硬盘,这时候你想把D盘挪到新的物理硬盘上去,这样可以有效利用两块硬盘,怎么办?现在你的数据库服务器跑在D盘上,你的 CVS服务器也跑在D盘上,要不在来个狠点的,你的Exchange Server整个跑在D盘上。现在不允许你把这些服务器停下来,你怎么办才好?可是有了LVM支持的Unix,就是如此的轻松,一条命令就搞定了,数据服务器仍然在跑着,在读写着硬盘IO,不过已经悄悄的从第一块物理硬盘挪到了第二块物理硬盘上去了,而这个搬家过程,别说是你和我,就是连数据库服务器程序他自己都不知道他读写的数据文件已经搬了一个物理硬盘了,所有的操作都是在程序运行和进行IO操作过程中完成的,多么有趣,这在Windows下就是 “Mission Impossiable”了。

其实这种在线状态的搬移数据还有一个很重要的意义,就是当一块老硬盘出现物理损坏,快要玩完的时候,你可以热插上一块新买的硬盘,在服务仍然运行的过程,分区就已经搬到了新硬盘上了,然后你就可以把老硬盘拔掉了。在整个过程中,程序一直正常的运行,不受一点影响,多么奇妙!

这只是LVM一个很小的应用实践,LVM甚至EVM强大的文件系统管理功能对于服务器来说简直就是梦寐以求的。

- 作者: ccat 2004年12月14日, 星期二 08:57  回复(0) |  引用(0)

使用一套外设管理linux


    转眼间新的学期开始了,一个小房间内放置了一台IBM专用服务器和两台普通单机构成的服务器。其中一台就是linux构建的,它的ip地址最后是159,所以我们都叫它159。159担负着整个二级学院的教师上课课件的共享工作,以及机房维护时软件的共享。因为用途单一,主要用samba和ftp来实现要求。
    现在狭小的空间内放置了5台电脑。条件艰苦很正常,但空间狭小无法放下5台显示器,我们为了作图和使用linux全部更换成17'的显示器,三个人簇拥在一起,呵呵,完全可以免去冬天的暖气了。
    Win2000提供了简便的远程共享服务,那么号称服务器最佳选择的linux呢?linux提供了vnc来实现远程共享服务。VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序(vncserver)。VNC的基本运行原理和一些 Windows下的远程控制软件很相象。VNC的服务器端应用程序在UNIX和Linux操作系统中适应性很强,图形用户界面十分友好,看上去和 Windows下的软件界面也很类似。在任何安装了客户端的应用程序(vncviewer)的Linux平台的计算机都能十分方便的和安装了服务器端的应用程序(vncserver)的计算机相互连接。另外,服务器端 (vncserver)还内建了Java Web接口,这样用户通过服务器端对其他计算机的操作就能通过Netscape显示出来了,这样的操作过程和显示方式比较直观方便。
如何获取和安装VNC?

VNC这款软件可以通过一下网址下载:
http://www.realvnc.com/download.html

VNC最新的版本是4.0。该主页上还提供了VNC的二进制程序代码下载3.3.3r1_x86_ Linux_2.0.tgz 有兴趣的朋友可以通过分析其源代码来更深入的了解VNC的工作原理。这个源码压缩包里包括了VNC的客户端和服务器端的Linux版本的完整源码。如果你想要其他操作系统版本(Windows,UNIX)的VNC的话,在该主页上也能找到。

关于其他Windows和MAC版本的VNC软件的安装方法,在这里就不需要讲述了,只要用鼠标双击VNC软件包就能顺利安装,这和其他的Windows下的应用软件是一样的。我们具体的来看一下Linux版本的VNC是如何安装使用的。
    首先要把下载到硬盘里的VNC软件包解压。使用untar命令即可。可以把VNC解压到/home/ vnc中,解压后您会发现有vncserver,vncpasswd, vncviewer,Xvnc这4个文件,接着把这4个文件拷贝到/usr/bin 目录中。
    如果您想通过VNC的服务器端控制其他的计算机,那么下一步就是创建一个子目录/usr/local/vnc/classes,创建目录后,拷贝这个VNC Java .class文件到/usr/local/vnc/classe目录中,执行以下命令进行配置:
# mkdir -p /usr/
local/vnc/classes
# cp classes/* /usr/
local/vnc/classes
接着,查看你的Linux系统中是否安装了Perl scripting脚本语言。Perl的解释程序在/usr/bin/perl/目录中。如果您的Linux中还没有安装Perl scripting脚本语言,那么您就需要修改vncserver script的第一行指定特定的/usr/bin/perl/目录。一般情况下Linux系统中都会安装有Perl scripting脚本语言的。
好了,主要的VNC配置步骤就是那么多,如果您有特殊的需要,可以参考VNC里的说明进行具体的设置。在完成VNC的安装之后,可以通过在Linux的终端中运行:
# vncserver
来启动VNC的服务器端。VNC的服务器运行之后,首先它会要求您输入服务器密码,您这时候需要为服务器设立一个保护密码,这是非常重要的步骤。如果密码设置成功,那么script中就会显示出这样一个信息:display:1.。这个信息是什么意思呢?原来,在UNIX平台中的VNC服务器端 (vncserver)实际上是运行一个自己的特制的终端服务器,用来显示运行的网络中的客户端vncviewer的信息。

如何管理VNC?
因为VNC有自己独立专用的X Server,所以我们可以对它进行相应的设置。这里要告诉读者的是,关于VNC的常见问题解答(FQA),文档等内容在以下网址可以看到,尽管都是英文的资料,不过这几个网址对如何设置VNC的远程控制管理窗口等问题的解答是非常详细的,有需要的了解更多关于VNC的远程管理功能具体设置的朋友可以到以下网址查询:
http://www.uk.research.att.com/vnc/doc.html
http://www.uk.research.att.com/vnc/faq.html
http://www.uk.research.att.com/vnc/start.html
在默认情况下,VNC使用的管理图形用户界面是twm,这个twm管理窗口我想大家一定很熟悉了,在Linux众多的图形管理窗口中,twm对系统的要求是最低的,对资源占用行对其他管理窗口要小很多,这对我们在Linux运行时启动VNC时是非常有用的。twm管理窗口的默认配置参数就存储在/home 里地一个隐藏子目录.vnc当中的xstartup文件里,如果您需要对twm重新进行配置,可以在此目录中找到xstartup文件进行修改。
尽管twm管理窗口看上去不如KDE和GNOME那样华丽,但是您在运行VNC进行远程管理的时候并不需要KDE那样复杂的图形用户环境,并且KDE占用的系统资源相对较大,并且不是很容易进行网络管理,有twm就足够了。还有一个比较好的图形用户界面就是fvwm2,这个图形用户界面占用的系统资源也比较小,也适合作为VNC图形管理环境使用。需要fvwm2的读者可以到http://www.fvwm.org下载使用。
对VNC进行测试的工作也非常简单,首先运行VNC的服务器端,然后运行vncviewer xxx.xxx.xxx.xxx:1 ,注意,xxx.xxx.xxx. xxx就是您的计算机的IP地址或者主机名。:1指的是要启动X显示方式。如果您的Linux系统中安装了Java classes,您可以启动NETSCAPE(当然如果您使用的是Windows操作系统,也可以运行Internet Explorer)来连接vncserver,然后输入以下URL:http://xxx. xxx.xxx.xxx:5801 ,同样,xxx.xxx.xxx.xxx是您计算机的IP地址或者主机名。
完成以上步骤后,vncviewer Java applet会自动的载入浏览器,并且提示您输入管理员密码,这样您就可以直观的参看,管理VNC了。
如果您想通过VNC远程控制一台Windows或者MAC平台的计算机,那么请您注意这些计算机的5800端口是否空闲,不被其他设备所占用,因为VNC必须使用5800端口和其他计算机进行连接通讯。
其他操作系统上使用GUI界面的viewers也要特别注意,viewers需要在16位色的显示模式下工作,如果您的Windows操作系统中不能上16位色,那么请您及时的调整您计算机的显示模式。不然viewers无法正常工作。
好了,最后要告诉大家,VNC不但可以通过Linux系统的主机来远程控制其他操作系统的计算机,更令人吃惊的是VNC还可以控制手持式的数码产品。例如使用PalmPilot 和Windows CE平台的PDA(个人数字助理)也能通过无线MODEN和Linux主机相互连接,这样您在上班的的地铁上也能轻松的通过无线PDA和家里的Linux 主机相互通讯了。是在是太神奇了。
 
第九章  LINUX软件安装
新的操作系统装好了,安装一些新的软件那是难免的。但是在Linux中,安装应用软件和Windows下有些不同哦。而且对于Linux初学者来说,安装软件是一件很让人头疼的事情。由于很多Linux应用软件都是以源代码的形式发布的,这就要求用户根据自己系统的实际情况和自身的需要来配置、编译源程序后,才能使用这些软件。
大多数Linux初学者往往不知道该如何进行配置和编译。下面笔者就简单介绍一下如何安装Linux应用软件。在安装应用软件之前,还要确保软件安装的编译环境,比如编译器GCC、必要的库文件等。不过,用户不需要担心这些问题,因为大多数            Linux发行版本都已经默认安装了GCC编译器。
目前流行的软件包有两种比较常见的形式,一种是以RPM、deb包为代表的智能软件包,另一种是file.tar.gz形式的压缩。本文将讨论file.tar.gz的安装方法以及智能软件包在文本环境和图形环境下的安装方法。

一、源代码安装
应用软件的源代码一般是file.tar.gz或者file.tgz格式,也就是说是以tar来打包,然后用gzip来压缩。以应用软件xfce-3.8.7.tar.gz为例,先进入软件的当前目录,然后使用gzip解压:
#gzip -d xfce-3.8.7.tar.gz(注:-d 代表解压)。
然后用tar解包:
#tar -xvf xfce-3.8.7.tar
由于tar和gzip经常一起使用,所以tar还提供了一个参数,它可以自动调用gzip来解压,即:
# tar -xzvf xfce-3.8.7.tar.gz。
进入解压完成之后新建立的目录,一般的应用软件中都有一个用来配置软件的可执行文件??configure,它的参数比较多,而且用法也非常灵活。当然,安装不同的软件参数也不相同,具体有些什么参数,可以用命令:
#./configure help取得详细的帮助。例如:
/configure --prefix=/usr/local/mysql(表示设置软件的安装目录为:/usr/local/mysql)
              在运行#./configure
            [options]配置软件后,它会根据你当前系统、编译、安装相关的信息,生成一个安装配置文件Makefile。Makefile文件通常是用来编译和安装软件的,运行make命令时系统会自动根据Makefile文件中的设置对软件进行编译和安装,如果编译能够顺利通过的话,运行#make
            install命令来安装。
二、智能包安装
现在,以智能包形式提供的软件很多,像RedHat Linux的RPM、Debian            Linux的DEB、KISS、BSD以及Slackware等。RPM和Debian几乎统治着Linux包管理世界,它们是首先被大多数商业 Linux发行版本所广泛采用的应用软件。下面笔者就介绍一下如何安装以RPM和Deb格式打包的软件。
  RPM是RedHat Package Manager的缩写,它只能使用在安装了RPM软件的系统中,不过好像目前大多数中文Linux发行版本都支持RPM软件包。
1.用命令管理
#rpm [options] abc.rpm
例如:安装python-1.5.2-35.i386.rpm软件时,可以使用如下命令:
#rpm ?ivh python-1.5.2-35.i386.rpm。
如果你想知道RPM软件包中的相关信息,可以使用命令:#rpm ivh python-1.5.2-35.i386.rpm。
如果想知道python-1.5.2-35.i386.rpm会在系统里安装哪些文件,可以使用以下这个命令:rpm -qpl python-1.5.2-35.i386.rpm。
由于RPM的参数很多,我们就不一一列举,想得到更多有关RPM的参数,可以用命令:#man rpm取得详细的帮助信息。
2.图形界面工具管理
相对命令方式来说,在图形环境下,安装、升级、卸载和查询RPM软件包是一件非常简单轻松的事情,因为Linux提供了几个功能强大的RPM包管理工具。我们推荐使用Linux的图形管理工具来维护RPM软件包,GNOME中的GnoRPM和KDE中的Kpackage就是功能强大的RPM 包管理工具。由于国内用户使用的中文Linux发行版本中最常见的窗口管理器是KDE,下面就以KDE中Kpackage为例,介绍如何使用RPM包管理工具。
点击Start(开始)→System tools(系统工具)→Kpackage,出现Kpackage界面,同时分析Linux系统中的 RPM数据库。它将安装好的RPM包形式的软件按照功能分在Amusements、Application、Development、Document、 Extension、Extentions、Networking、System Environment、User Interface以及X11等几个树形目录中,每个目录中有相应的文件图标和名称。要安装或升级软件,只要点击工具栏的相应按钮就会弹出打开文件的对话框,选中要安装的RPM文件,单击OK按钮,如果不缺必要的运行库,就开始安装软件了。卸载软件时,用鼠标选择相应的软件,单击右边的Uninstall 按钮就可以了。

- 作者: ccat 2004年12月14日, 星期二 08:56  回复(0) |  引用(0)

为什么你要学习linux
为什么你要学习linux
这个问题,或类似的问题好象是每一本Linux书都要写的,因为这些都是linux宣传、推广期面对的问题。每一个linux的作者都是义务的推销员,我希望做的更好一点:)
倒退一点时间,我曾经以老师的身份给大一的新生讲过一节计算机文化基础课。凡是正在读大学的人都知道这门课。在2001年以后,其中加了一个章节 linux.,许多老师都是跳过那个最不会考的,但也许是最有前途的章节。因为我在学校这个小圈子里,算是最了解linux的人,给他们上了一次课。
那是2003年冬天,上午的阳光也是很昏闷。这是计算机文化基础课最后一次课,先是我的一小节,然后下一节老师划重点。呵呵,也许这就是linux的现状。面对90个人,我发慌了,更倒霉的是,投影机坏了,不仅是坏了,它连尸体也没有留下。我的powerpoint也没有了用武之地。
我这么做的开场白:你们好,今天我来介绍一下linux.。作为当今最有前途的操作系统,如果你投入也许是钱途。什么是linux?直白的说,是一堆代码,说了你们不会懂。但是它是能让比尔。盖茨先生感到紧张的东西。
它不仅是一种技术,更是一种文化。我们大部分软件,都是“教堂”模式下开发出来的。由一个人,一个组织,或者一个公司,几个公司共同开发出来的。他们最大的特点就是一定只有一个管理机构来管理开发。而linux代表另外一种软件文化,它是由很多不同的人,不同的组织同时协作开发的。
教堂模式下会形成像比尔。盖茨这样的大富人,而集市模式下我、你还有你会变的富有,但不会出现财富的过分集中。

- 作者: ccat 2004年12月14日, 星期二 08:55  回复(0) |  引用(0)

新的开始
     这里是2004年7月4日的清晨6点,这个写作计划持续的很久了。我一直希望能把一本技术性的书写成小说那样,即让人能学到东西,又易于能读懂。如同《Red Hat Linux 8 宝典》的目的是为你组装一辆linux牌的保时捷一样。这是我的一个梦想。
      此时的阳光刚刚泻过窗帘的缝隙,天晴,但有云,发着点黄色的光芒。我的身后躺着一个兄弟,他实在盯不住一夜的煎熬,躺在实验室的地板上睡着了。我刚刚看了一夜的电影,正想做点有意义的事情。
     前三个晚上一共修16台破电脑和一台IBM笔记本,这些电脑用来跑linux绰绰有余,但可惜的是,老师们依然只有对mswin2000,xp的认同。昨天晚上是比较痛苦的,因为有4块CPU需要拼到2台计算机上,结果是开机都不亮,花了1个小时的时间,全换了也不行。后来发现了秘密的所在,这些p3时代老掉牙的celconCPU有不同版本的内核,而不能使用的主板同样古老,它是VIA的964X系列,它默认的跳线支持1。7V左右的CPU,而我手上的是稍新一点的1。5V版本的,发现了秘密,问题就好解决了。
linux的秘密多于我们的想像,从learn到vmaster要经历多少呢?我希望写的东西是一种启迪,而不是一本大全。准确的说,应该是 handbook。如果想全面了解linux的没一个细节,我希望你去图书大厦买那些价格超过80元页码超过600页的图书,它会给你更全面的内容,我这里仅仅是技巧和知识的结合,换句话说,这里仅仅是快速入门手册,希望你喜欢。
      我这里不得不对自己做一个简要介绍:首先我不是linux“专家”,RHCE也没有通过,严格的说是没有去考,因为那天该死的学校里有一个很普通的考试,在学分和linux上,我向学校投降了。第二,我不是黑客,我没有聪明的头脑,混了好几年,技术水平依然平平,学校考试依然挂科。最后,我希望能通过我自身给大家带来的东西,证明给大家看,只要你投入,linux是可以改变命运的。
好了,我们开始第一章,“为什么你要学习linux”

- 作者: ccat 2004年12月14日, 星期二 08:50  回复(0) |  引用(0)