解决因为centos PHP版本过旧升级,造成的eAccelerator错误

Posted on 二月 16th, 2011 in apache、php、mysql | No Comments »

我的Centos的版本是5.5,PHP版本是5.1.6,无法安装phpcms v9版本,于是决定升级php到5.2。可是Centos默认的源里没有比5.1.6更高版本的PHP,于是通过如下处理升级PHP:

#gedit /etc/yum.repos.d/CentOS-testing.repo

其中内容:

# CentOS-Testing:
# !!!! CAUTION !!!!
# This repository is a proving grounds for packages on their way to CentOSPlus and CentOS Extras.
# They may or may not replace core CentOS packages, and are not guaranteed to function properly.
# These packages build and install, but are waiting for feedback from testers as to
# functionality and stability. Packages in this repository will come and go during the
# development period, so it should not be left enabled or used on production systems without due
# consideration.
[c5-testing]
name=CentOS-5 Testing
baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
includepkgs=php*

然后在执行:
#yum update php

升级完毕,运行:
#php -v

出现如下错误:
PHP Warning: PHP Startup: eAccelerator: Unable to initialize module
Module compiled with module API=20050922, debug=0, thread-safety=0
PHP compiled with module API=20060613, debug=0, thread-safety=0
These options need to match
in Unknow on line 0

重新安装 eAccelerator即可解决,安装方法:CentOS 5.1下安装eAccelerator

解决系统重启后samba无法共享的问题

Posted on 五月 30th, 2010 in linux笔记 | No Comments »

我配置samba主要提供给其他windows主机简单文件共享之用。碰到的问题是每次重新启动后,都需要在xwindows状态下重新进入samba管理界面设置一下才能提供共享。

经过研究,是smbd和nmbd这两个samba的守护进程没有随重启而启动的关系。于是在启动配置文件/etc/rc.d/rc.local中加入:
/sbin/samba/smbd -D
/sbin/samba/nmbd -D

其中smbd负责samba的文件和打印服务、授权与被授权,nmbd负责samba的名字解析、浏览服务,所以nmbd不是必须的。

重新启动后,无需再次设置,即可提供其他windows主机文件共享了!

Centos升级到5.5后PAM引起的无法远程启动xwindows

Posted on 五月 18th, 2010 in linux笔记 | No Comments »

昨天将Centos升级到5.5后,突然发现无法通过telnet启动xwindows了。

错误提示如下图:

但是如果从本机直接运行startx的话,没有问题。
本机运行startx后,再退出,然后在telnet下再运行startx也没有问题了。

觉得这应该是与权限有关,通过Google搜索得到解决方案:
在/var/run/console/目录下新建一个当前用户的用户名的目录
然后再运行startx即可

适合旧电脑的Mini Linux选择

Posted on 五月 22nd, 2009 in linux笔记 | No Comments »

最近在研究适合低配置电脑的Mini Linux,我手头有一台P2 233+128M+8.4G配置的“破”电脑,想寻找适合其运行的Linux系统,需要Xwin、浏览网页、中文支持、文字处理等最基本操作。

众所周知,现在主流的Linux发行版比如Ubuntu、Federa等对于旧电脑来说也是非常庞大的系统,低配硬件不足以支持其运行Xwin等,所以我把目光转向了Mini Linux,选择对象有Puppy、Deli、slitaz。

经过初步考察发现三者均能很好的适应低配置硬件,但是Deli已经停止开发一段时间了,slitaz对于中文支持不是很好,所以仅剩下Puppy了。

我在以后会发布一些关于使用Puppy的经验与大家分享。

使用更新命令yum时出现故障的解决方法

Posted on 五月 15th, 2009 in linux笔记 | No Comments »

近日在运行系统更新命令yum update时候出现了如下错误提示:
Component: pirut
Summary: TBe8ae967a sqlitesack.py:94:_read_db_obj:TypeError: unsubscriptable object

Traceback (most recent call last):
  File “/usr/sbin/pup”, line 407, in _apply
    output = self.applyChanges(self.mainwin)
  File “/usr/lib/python2.4/site-packages/pirut/__init__.py”, line 813, in applyChanges
    self.checkDeps(mainwin)
  File “/usr/lib/python2.4/site-packages/pirut/__init__.py”, line 550, in checkDeps
    (result, msgs) = self.buildTransaction()
  File “/usr/lib/python2.4/site-packages/yum/__init__.py”, line 647, in buildTransaction
    (rescode, restring) = self.resolveDeps()
  File “/usr/lib/python2.4/site-packages/yum/depsolve.py”, line 704, in resolveDeps
    for po, dep in self._checkFileRequires():
  File “/usr/lib/python2.4/site-packages/yum/depsolve.py”, line 939, in _checkFileRequires
    if not self.tsInfo.getOldProvides(filename) and not self.tsInfo.getNewProvides(filename):
  File “/usr/lib/python2.4/site-packages/yum/transactioninfo.py”, line 414, in getNewProvides
    for pkg, hits in self.pkgSack.getProvides(name, flag, version).iteritems():
  File “/usr/lib/python2.4/site-packages/yum/packageSack.py”, line 300, in getProvides
    return self._computeAggregateDictResult(“getProvides”, name, flags, version)
  File “/usr/lib/python2.4/site-packages/yum/packageSack.py”, line 470, in _computeAggregateDictResult
    sackResult = apply(method, args)
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 861, in getProvides
    return self._search(“provides”, name, flags, version)
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 43, in newFunc
    return func(*args, **kwargs)
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 837, in _search
    for pkg in self.searchFiles(name, strict=True):
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 43, in newFunc
    return func(*args, **kwargs)
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 586, in searchFiles
    self._sql_pkgKey2po(rep, cur, pkgs)
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 470, in _sql_pkgKey2po
    pkg = self._packageByKey(repo, ob['pkgKey'])
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 413, in _packageByKey
    po = self.pc(repo, cur.fetchone())
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 68, in __init__
    self._read_db_obj(db_obj)
  File “/usr/lib/python2.4/site-packages/yum/sqlitesack.py”, line 94, in _read_db_obj
    setattr(self, item, _share_data(db_obj[item]))
TypeError: unsubscriptable object

Local variables in innermost frame:
item: name
db_obj: None

这个问题是由于yum的原数据损坏导致的,需要先删除原数据和数据库缓存,然后重建,问题即可解决
解决方法,依次运行以下命令:

yum clean metadata
yum clean dbcache
yum makecache

Centos下telnet服务的安装

Posted on 四月 3rd, 2009 in linux笔记 | No Comments »

本人linux环境:CentOS 5.3

在终端中使用 #rpm -q telnet 和 #rpm -q telnet-server 命令查询是否安装了telnet的client和server端。
一般client默认已经安装了,但是server端需要安装,安装命令:#yum install telnet-server

安装完毕后,需要开启服务:#gedit /etc/xinetd.d/telnet
将其中的disable = yes 的 yes 改成 no

开机启动设置: #gedit /etc/rc.d/rc.local
添加: /sbin/service xinetd start

接下来激活telnet并测试是否安装成功,运行命令: #/sbin/service xinetd restart

测试服务,找一台其他机器,输入命令:telnet IP
如果配置正确,系统提示输入远程机器的用户名和密码 (默认情况root用户是不能通过telnet直接登录的)
Login:
Password:

为了安全起见,我们需要改变端口,限制登录ip。
改变端口:
命令:#gedit /etc/services
找到如下内容:
telnet 23/tcp
telnet 23/udp
将端口改成你希望的,比如:
telnet 1000/tcp
telnet 1000/udp

限制登录ip:
命令:#gedit /etc/xinetd.d/telnet
修改成如下格式:
service telnet
{
disable     = no  #激活 telnet 服务,no
bind       = 192.168.1.1 #本机ip
only_from    = 192.168.0.0/16  #只允许 192.168.0.0 ~ 192.168.255.255 这个网段进入
only_from    = .edu.cn  #只有教育网才能进入!
no_access    = 210.45.160.{115,116}  #这两个ip不可登陆
access_times  = 8:00-12:00 20:00-23:59  # 每天只有这两个时间段开放服务
……
}

设置完毕,重新启动telnet服务,命令:#/sbin/service xinetd restart

端口修改的话,命令格式:telnet ip port (注意ip与port之间没有冒号,例如:telnet 192.168.1.1 1000)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值