Tag Archives: linux

Linux下将内存虚拟成硬盘

因为硬盘的IO开销很大,所以就计划在系统中将部分内存虚拟成硬盘;记得多年前曾经在Windows下通过软件虚拟出来过,所以就Google Linux中虚拟的方法。
最后发现在Linux中干这个事情超级简单,连第三方软件都不用,一个命令搞定。
Linux中将内存虚拟成硬盘的方法有两种:

Ramdisk

Ramdisk是用一部分内存空间来模拟硬盘分区,大小不可改变。

mkfs -t ext2 /dev/ram0
mkdir /ram
mount /dev/ram0 /ram
df -hl

完成后发现只有16M,跪了,这个确实不太实用。

tmpfs

tmpfs是一种基于内存的文件系统,也可以使用swap分区来存储,tmpfs是一个文件系统,并不是块设备。

df -hl

查看tmpfs的大小,你会发现其实已经挂在到/dev/shm,其实就可以直接使用了。
也许你想要定一个自己期望的大小,那就使用下面的命令

mount -t tmpfs -o size=2G tmpfs /ram
df -hl

现在就是一个完全自己定义大小的tmpfs格式的空间了。

既然是内存型存储就意味着掉点之后数据肯定全部丢失,所以要合理使用内存虚拟出来的硬盘系统。

Centos下添加PHP对MSSQL的支持

其实很少会有连接SQL Server的机会,不过我们公司刚好有个应用需要使用的SQL Server的数据库,所以也知道给LNMP安装MSSQL的扩展。
搜索网上的相关文章一般的解决方案是Freetds,Freetds的主要功能就是让Linux系统可以访问SQL Server服务。

安装Freetds

Freetds 官方网站是 http://www.freetds.org,可以去官方网站下载程序,文中下载的是0.92.79版本。

wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-0.92.79.tar.gz

然后解压,并且编译安装

tar -zxvf freetds-0.92.79.tar.gz
cd freetds-0.92.79
./configure --prefix=/usr/local/freetds
gmake
gmake install

安装完成后可以使用命令测试下

/usr/local/freetds/bin/tsql -S 192.168.0.10:1433 -U sa

安装PHP的MSSQL扩展

本服务器使用的是lnmp集成环境,php是5.3.21;如果是单独安装php的也一样;先进入下载加压后的PHP文件目录,然后编译安装

cd /data/lnmp0.9-full/php-5.3.21
cd ext/mssql
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds
make
make install

随后在php.ini中添加扩展

vim /usr/local/php/etc/php.ini

在最后加入一行

extension = "mssql.so"

最后重启php即可

配置Freetds

vim /usr/local/freetds/etc/freetds.conf

在文件中加入以下语句

[sqlservername]
host = 192.168.0.10
port = 1433
tds version = 7.0
client charset = UTF-8

PHP中测试连接

新建一个php文件,放入以下代码

$conn = mssql_connect("sqlservername", "sa", "password") or die ("无法连接");
echo $conn;

现在你的php已经完全支持连接SQL Server了。

Web压力测试软件webbench

帮朋友搞好服务器,安装完程序,第一想到的就是做个web压力测试,一直用webbench,刚好分享给大家

官方网站:http://home.tiscali.cz/~cz210552/webbench.html
下载地址:http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz

1.安装webbench
wget http://www.honglei.net/file/webbench-1.5.tar.gz
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
make && make install

如果出现下面错误提示:
ctags *.c
/bin/sh: ctags: command not found
解决方法:安装ctags
yum install ctags

如果安装了ctags, 仍然报错:
install -s webbench /usr/local/bin
install -m 644 webbench.1 /usr/local/man/man1
install: cannot create regular file `/usr/local/man/man1′: No such file or directory
make: *** [install] Error 1
解决方法
mkdir -m 644 -p /usr/local/man/man1

2.运行
webbench -c 500 -t 30 http://www.baidu.com/
参数说明:-c表示并发数,-t表示时间(秒)