Linux单用户方式

做为一个LINUX爱好者,每天都渴望得到新的知识,同时每天也把LINUX的各个部分翻来覆去的进行着探索,在这个过程难免会让LINUX无法启动。在 WIN98中有一个保护模式,可以以保护模式进入到WIN98之中,对系统进行修复。在LINUX中也有类似保护模式的启动方式,可以用它对系统进行修复。
继续阅读“Linux单用户方式”

关于重建 grub

第一步:想办法进入原来的linux.可以利用启动软盘,安装光盘等.也可以使用live cd,比如knoppix

1, 使用knoppix:光盘启动后,在boot:后输入knoppix 2出现knoppix提示符后,挂载原来linux的根分区,比如mount /dev/hda8 /mnt/hda8把改变当前的根分区和bashchroot /mnt/hda8可以看到bash提示符变了,这就可以进入下一步了

2,用安装光盘用光盘或硬盘安装方式,在boot提示符下输入linux rescue一步一步往下进行,redhat系统会找到已经安装过的系统,并挂载到/mnt/sysimage下,按提示输入chroot /mnt/sysimage(网上看到的,自己没验证过)

debian系统需要自己挂载原来的根分区,使用方法和knoppix一样

第二步:使用grub命令重建grub
在上一步chroot成功后,在新的bash提示符下敲 grub成功后回出现grub>提示符,给出你原来的启动映像所在的分区,root (hd0,6)需要注意,这个分区是要启动映像(比如vmlinuz开头的文件),还有grub目录,如果你在以前安装时只有一个/分区,那就是它,如果你给/boot单独划了一格分区,那你得先找到这个分区。另外,这个编号规则和hda*不太一样,通常hda7对应(hd0,6),hdb1对应(hd1,0), 因为(hd*,*)里分区的编号是从0开始的,而hda*后面那个数字是从1开始的。然后可以重建一个grub了,还是在grub>提示符下,敲 setup (hd0)这个命令会把grub写道mbr里然后quit命令退出grub,再重启就行了。

其他建议:其实可以选择不把grub写到mbr里,而是写到/分区或/boot分区里,使用windows启动菜单启动它
方法是在重建grub时用setup (hd0,6) 代替setup (hd0).或者安装时选择把grub写到根分区,而不是mbr
得到该分区的启动扇区,命令是dd if=/dev/hda7 of=/bootsect.lnx bs=512 count=1然后想办法把这个文件弄到windows下的c:\下最后修改c:\boot.ini文件,在最后添加一行c:\bootsect.lnk=”linux – grub”重启就能看到效果了.这样以后你就可以随便重装windows了,只要安装完后再把bootsect.lnk弄到c:\,再修改boot.ini就行了

grub重建

Grub

grub 是較新的 boot loader 程式,他具有相當多的優點,這裡不一一列舉啦!無論如何, lilo 能做的, grub 幾乎都可以做的到,包括選單、密碼、指向等等的功能!不過, grub 比 lilo 要先進的幾點是:
继续阅读“grub重建”

linux下ftp的配置

1. 检查是否安装了vsFTPd
# rpm -qa|grep vsftpd
2.启用vsftpd服务器
# chkconfig vsftpd on
3.启动vsftpd服务器
# /etc/init.d/vsftpd start
4.测试
#ftp localhost
若正常,则会出现登录信息.
5.配置vsftpd
在/etc/vsftpd/vsftpd.conf中进行配置.
 anonymous_enable=YES
 local_enable=YES
允许匿名用户和本地帐号用户登录.但在/etc/vsftpd.user_list列表中的用户将被拒绝.
 userlist_files=/etc/vsftpd.user_list_local
 userlist_enable=YES
也可以改为只允许列表用户访问.设置userlist_deny=NO并更改/etc/vsftpd.user_list,以便
只有列表中用户可使用服务.
匿名用户的根目录是/var/ftp.常规用户的是/home/user,user是用户名.
可以使用chroot_local_user选项来更改常规用户的根目录.
6.从本地用户上传文件
write_enable=YES
local_umask=022
7.匿名用户上传文件
anon_upload_enable=YES
anon_umask=077
anon_other_write_enable=YES
anon_mkdir_write_enable_YES
8.可使用
chown_uploads=YES
chown_username=kqs2
让用户名为kqs2的用户设置上传权限.

深入理解 abstract class和 interface

abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于 abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对于问题领域本质的理解、对于设计意图的理解是否正确、合理。本文将对它们之间的区别进行一番剖析,试图给开发者提供一个在二者之间进行选择的依据。
继续阅读“深入理解 abstract class和 interface”

印花税提高背后各路专家剖析政策意图

  财政部决定从2007年5月30日起,调整证券(股票)交易印花税税率,由现行1‰调整为3‰。这条新闻无疑成为今天A股市场上的一颗”重磅炸弹 “,这对于目前处于估值过高、市场投机加大、居民储蓄大量入市推动股指迭创新高的A股市场究竟会产生怎样的影响,大盘短期的走势又会如何,下面一些市场、专业人士的分析,将会对为你提供参考与建议
继续阅读“印花税提高背后各路专家剖析政策意图”

PHP5中的对象持久层实现:Propel简介

传统的PHP应用程序一般采用无框架的Client-Server-Database三层模式,实现起来快速,很适合中小企业搭建动态站点的需求。 PHP5的出现,把PHP引向更广泛的使用领域。现在的站点,不仅要考虑站点的运行效率,还要综合开发效率以及未来的维护成本。于是有很多站点开始用基于 MVC模式的框架。
在M,也即模型中,考虑的正是数据模型的存储和数据。一般的解决方案将使得在业务逻辑中夹杂着较多的SQL。 ORM的出现很好的解决了这个问题。

Propel是一个ORM的PHP实现。

简介:
Propel是一个基于Apache Torque的对象持久层,需要PHP5支持.实际上,它让你使用 对象 代替SQL 来读写数据库表中的记录.它提供了一个生成器来创建基于你的数据模型的SQL定义文件和相应的类文件,并有一个运行时引擎透明的处理对象持久和获取工作. 如果要定制生成的类将是很简单的事情,XML, PHP类和Phing构建工具使得把Propel集成到已有的应用程序框架也相当的容易.
Propel算是PHP中对ORM的实现,并且用到它的兄弟项目Creole作为数据抽象层.
它的核心思想是:通过 XML 格式的模式文件和相应的配置文件来生成SQL和类, 在数据库抽象的基础上,  更近一步,它”隐藏”了数据库,使得WEB开发人员专注于业务逻辑上.
实践:著名PHP框架 symfony使用了精简版的Propel.
相关:PEAR DB_DataObject是另一个轻型的ORM实现,不过它的数据库抽象层使用的是 PEAR DB.
链接:
http://propel.phpdb.org
http: //creole.phpdb.org

php编写大型网站问题集

PHP以其易用性得到迅速的推广,但易用并不是说就能用好它,实际上许多程序员用它很容易的立一个个WEB应用系统,但又有多少人仔细的考虑过他们的代码,是否容易维护、是否足够健壮、否效率足够高、是否足够安全,当PHP用于建立大型网站时这些就成为很关键的因素。下面我们从较轻微的问题开始讨论,直至一些致命的错误。共分三部分。 继续阅读“php编写大型网站问题集”

儒教误国—— 《万历十五年》读后

  《万历十五年》(黄仁宇著)选取了明代历史上很平常的一年--万历十五年,即1587年。这一年在中国历史上并未发生什么惊天动地的大事,不为一般研究者所注意。然而这一年发生的许多琐细小事,却如青萍之末成为帝国走向崩溃的前兆。
  
  这一年,海瑞去世,一代名将戚继光去世,努尔哈赤崛起,然而朝廷却未予注意;西班牙无敌舰队即将出征英吉利,揭开世界历史新的一页……
继续阅读“儒教误国—— 《万历十五年》读后”