linux根分区扩容

今天网站上传图片出问题了,一开始还以为是程序问题,后来发现原来是服务器存储空间不够,明明有200G的磁盘空间,没理由这么快就用完,查了一下分区情况,原来有两块磁盘,根分区只挂载在大少只有10g那块磁盘上面,而且已使用了100%了!接着就要为根分区扩容了:(环境:redhat 5.2 x64)

1:查看分区情况

shell>fdisk -l

Disk /dev/sda doesn't contain a valid partition table, 这句说明了190g的磁盘没分区

2:磁盘分区

shell>fdisk /dev/sda  (过程略,这里只建了一个分区) Continue reading

Linux下独立添加PHP扩展模块mbstring 和 curl

环境php5.2.13, 不支持mbstring扩展
假如php的源码包在/usr/local/src/php-5.2.13
php安装目录是/usr/local/php

# cd /usr/local/src/php-5.2.13/ext/mbstring/
# rpm -qa|egrep "autoconf|gcc"      这个是检测这些组件是否安装,没有安装请执行下面这句,否则会报错
# yum -y install autoconf gcc gcc-c++
# phpize
# ./configure --with-php-config=/usr/local/bin/php-config
# make
# make install

执行完毕后在php.ini里增加

extension=mbstring.so

重启web服务器, 看一下phpinfo, 应该支持mbstring了!

===================================
1.安装curl

wget http://curl.haxx.se/download/curl-7.19.6.tar.gz
tar -zxvf curl-7.19.6.tar.gz
cd curl-7.19.6
./configure --prefix=/usr/local/curl
make
make install

2.编译生成扩展
进入php源程序目录中的ext目录中,这里存放着各个扩展模块的源代码,选择你需要的模块,比如curl模块: Continue reading

You could try using --skip-broken to work around the problem 解决办法

--> Missing Dependency: libevent-1.4.so.2()(64bit) is needed by package mysql-proxy-0.5.1-2.el5.x86_64 (epel)
Error: Missing Dependency: libevent-1.4.so.2()(64bit) is needed by package mysql-proxy-0.5.1-2.el5.x86_64 (epel)
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
The program package-cleanup is found in the yum-utils package.

 

解决:

[root@oracle10g bin]# yum --skip-broken update

CentOS 5.1安装php mcrypt和mbstring的扩展

还是先说系统及php相应的版本:
CentOS 5.1 内核 2.6.18; php 5.2.6 ;phpmyadmin3.2.2
其 实大家遇到的问题是phpmyadmin 3.2.2 这个版本需要更高的php版本来支持,当然CentOS 5.1 5.2 5.3这些版本的php都是5.1的,所以问题就自然来了。如果我们要安装php-mcrypt和php-mbstring 的扩展,用系统自带的yum 来升级安装是不行的。但是用rpm 或源码安装也是没有问题的。可是我从网上找了很多帖子不是这里有问题就是那里不行。今天就尝试下看是否有更快捷的方法。
结果还真是让我三番五次的试出来了,下面我就给大家说明下。
因为很多博客系统和网站都需要一个GD库的支持,默认情况下很多是不直接支持的,需要我们单独安装,所以为了升级安装我的php版本我从网上找了一个yum升级的源:http://www.jasonlitka.com Continue reading

CentOS下搭建Git服务器Gitosis[教程]

说明:由于条件有限,我这里使用的是同一台centos的,但教程内容基本上通用。

1.编译安装git

git安装教程:http://blog.haohtml.com/archives/10093

2.安装gitosis
  1. $ yum install python python-setuptools
  2. $ git clone git://github.com/res0nat0r/gitosis.git
  3. $ cd gitosis
  4. $ python setup.py install
3.在开发机器上生成公共密钥(用来初始化gitosis) Continue reading

centos升级内核教程

当前系统为CentOS Linux release 6.0 (Final),内核版本为2.6.32-71.el6.i686.由于最近内核出现最新的漏洞(linux kernel 又爆内存提权漏洞,>=2.6.39 内核无一幸免 http://blog.zx2c4.com/749 和http://www.haohtml.com/news/netsafe/47456.html),所以将内核升级至3.2.2最新版本.

1.查看当前系统内核

[root@bogon linux-3.2.2]# uname -r
2.6.32-71.el6.i686

2.下载linux-3.2.2内核包

cd ~
wget -c http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.2.2.tar.bz2
tar jxvf  linux-3.2.2.tar.bz2
cd linux-3.2.2

3.配置内核并安装

make mrproper #清除环境变量,即清除配置文件
make menuconfig #在菜单模式下选择需要编译的内核模块

Continue reading

CentOS 6.0 VNC远程桌面配置


引言:
必须明白:
vncserver在调用的时候,会根据你的配置来启用server端的监听端口,
端口默认是从5900开始,再加上你的桌面号。
比如你的桌面号为1,则vnc的连接端口号为5900+1=5901
比如你的桌面号为10000,则vnc的连接端口号为5900+10000=15900
======================================================================
下面配置VNC服务器,使用户(root)能够通过vnc客户端远程连接到linux系统的图形界面(前提是你的服务器要安装桌面)

1、检查linux系统是否安装VNC
在终端窗口输入命令:

rpm -q vnc-server

返回信息如下

package vnc-server is not installed

说明vnc服务器没有安装 Continue reading

Centos64位系统下"configure: error: libjpeg.(a|so) not found"的解决办法

刚刚发布了Centos6.1新版本.就下载了64位的版本进行测试.

按照原来的lnmp安装教程.在安装php的过程中.执行到./configure 这一步的时候.竟然提示"configure: error: libjpeg.(a|so) not found"这项错误.明明已经安装过了libjpeg 和libjpeg-devel了.可这里仍然提示找不到库文件.很明显是路径的问题.默认会在/usr/lib/目录里查找相应的文件.但用whereis libjpeg发现.libjpeg被安装在了/usr/lib64/目录里.

[root@bogon php-5.2.17]# whereis libjpeg
libjpeg: /usr/lib/libjpeg.so /usr/lib64/libjpeg.so

1.如果提示"configure: error: libjpeg.(a|so) not found"错误

所以这里我们需要复制一份libjpeg.so到/usr/lib/目录里才可以.再次执行./configure命令即可.

cp -frp /usr/lib64/libjpeg.* /usr/lib/

2.注意过程中还会提示" Configure: error: libpng.(also) not found."错误,解决办法和上面的一样.

cp -frp /usr/lib64/libpng* /usr/lib/

3.如果提示"configure: error: Cannot find ldap libraries in /usr/lib."的话.

cp -frp /usr/lib64/libldap* /usr/lib/

说明:

通过上面的搜索其实就知道一些原因了,configure一般的搜索编译路径为/usr/lib/下,因为php默认就在/usr/lib/下找相关库文件,而x64机器上是在:/usr/lib64.这时你就可以直接把需要的库文件从/usr/lib64中拷贝到/usr/lib/中去就可以了.

常见错误参考:http://apps.hi.baidu.com/share/detail/11746738