msgbartop
古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。
msgbarbottom

30 Jan 10 HP ProBook 4710s

HP ProBook 4710s [ ProBook 4710s(VK275PA) 7900元 ]

* 英特尔®酷睿™2双核处理器
T9600(2.80GHz/1066/6M)/
P8700(2.53GHz/1066/3M)/
P7570(2.26GHz/1066/3M)/
T6670(2.20GHz/800/2M)/
T6570(2.10GHz/800/2M)
* 正版Windows® 7 家庭普通版/正版DOS/正版Linux
* 17.3英寸16:9 LED背光高清BrightView高亮屏(1600*900分辨率和1,600万色)
* 2GB/4GB内存
* 250GB/320GB/500GB硬盘
* ATI Mobility Radeon HD4330显卡,512MB独立显存
* 带盘面光雕技术和蓝光光盘只读技术的DVD刻录光驱/带盘面光雕技术的DVD刻录光驱
* 无线网卡
* 一年免费部件和人工保修、免费上门取送机(限国内距维修站40公里范围内)

Tags:

07 Jan 10 Ubuntu安装MySQL

好久没写日志了,前段时间,域名没有备案,封掉了。

Ubuntu安装MySQL很方便,直接运行

sudo apt-get install mysql-server

就可以了。

但如果要MySQL能够外部访问的话,要做下修改。
登录MySQL

mysql -u root -p

授予需要外部访问的IP或者用户的权限

GRANT ALL PRIVILEGES ON *.* TO shishuo@'%' IDENTIFIED BY "shishuopassword"; 

其中 *.* 表示 数据库.表,你可以写为 shishuo.*
如:

GRANT ALL PRIVILEGES ON shishuodatabase.* TO shishuo@'%' IDENTIFIED BY "shishuopassword"; 

这条语句的意思就是,shishuo这个用户可以在任何IP下,用 shishuopassword 密码,访问shishuodatabase数据库,并具有对shishuodatabase的所有权限。

然后

vi /etc/mysql/my.cnf

修改
bind-address = 127.0.0.1

#bind-address = 127.0.0.1

重启

/etc/init.d/mysql restart

这样外部也能访问了。

01 Dec 09 解读Nginx的Memcached Module

发现SyntaxHighlighter这个代码高亮插件有点问题,所以还是发个文件地址吧。
ng_http_memcached_module.c

28 Nov 09 修复Ubuntu 9.10

昨晚破解Win7失败,导致又进不来Win7了@_@,修复一下吧。
首先光碟启动Ubuntu,非安装进入Ubuntu下的控制台。

sudo mount /dev/sda6 /mnt
//如果要你的/boot是单独分区的话,需要运行以下命令
sudo mount /dev/sda6 /mnt/boot
sudo grub-install --root-directory=/mnt/ /dev/sda

进入Ubuntu系统后,在运行以下命令

sudo update-grub
sudo grub-install /dev/sda

如果你想修改启动顺序阿,启动默认时间阿,可以修改
/boot/grub/grub.cfg
这个和Grub1的配置文件有点不同,因为Ubuntu 9.10使用的是Grub2了。

27 Nov 09 2009年度总结

今年最主要的收获还是关于Linux系统方面的知识。

统计Apache的访问UV

cat /home/app/httpd/logs/access_log|grep 04/Nov/2009 | awk '{print $1}' | sort | uniq -c | sort -rn | wc -l 

系统实时并发

tail -10000 /home/app/httpd/logs/access_log | awk '{print $5}' | sort | uniq -c | sort -rn | head

系统连接状态统计

netstat -an | awk '{print $6}' | sort |uniq -c| sort -rn

Tags: ,

23 Nov 09 Emiller的Nginx模块开发指南中文版(PDF)

译者:姚伟斌 草稿:2009年9月21日
下载链接:http://yaoweibin.cn/maindoc/nginx-modules-guide-cn.pdf

23 Nov 09 当负载过高时重启Apache

最近半年碰到了几次,由于“蜘蛛”导致机器挂掉了,所以想出了这个方法,等系统负载过高的情况下,直接重启Apache。这就是Twitter提倡的那样,等进程杀死你之前,你先杀死他(原话不记得了)。其实这种方法早就在业界使用了。
来吧,看看我写的脚本。
checkload.sh

#!/bin/sh
TOP_SYS_LOAD_NUM=5
SYS_LOAD_NUM=`uptime | awk '{print $(NF-2)}' | sed 's/,//'`

echo $(date +"%y-%m-%d") `uptime`
if [ `echo "$TOP_SYS_LOAD_NUM < $SYS_LOAD_NUM"|bc` -eq 1 ]
then
    echo "##" $(date +"%y-%m-%d %H:%M:%S") "pkill httpd" `ps -ef | grep httpd | wc -l`
    pkill httpd
	sleep 10
	for i in 1 2 3
    do
		if [ `pgrep httpd | wc -l` -le 0 ]
		then
			/home/app/httpd/bin/apachectl start
			sleep 30
			echo "##" $(date +"%y-%m-%d %H:%M:%S") "start httpd" `ps -ef | grep httpd | wc -l`
		fi
	done
else
	if [ `pgrep httpd | wc -l` -le 0 ]
	then
		/home/app/httpd/bin/apachectl start
		sleep 30
		echo "##" $(date +"%y-%m-%d %H:%M:%S") "start httpd" `ps -ef | grep httpd | wc -l`
	fi
fi

然后在crontab里增加定时执行的命令

*/2 * * * * (/root/checkload.sh >>/root/checkload.log)

每两分钟检查一次系统负载。

Tags:

22 Nov 09 [Nginx]把源代码导到Eclipse中去

下载来Nginx-0.7.64,成功的把源代码部署到来Eclipse-CDT里,总结一下导入过程中碰到的困难和技巧。

首先自己先安装Nginx,比如我就安装在
解压nginx的源代码,

tar zxvf nginx-0.7.64.tar.gz

解压的目录为
/home/herbert/Downloads/nginx-0.7.64

再把nginx安装到/home/herbert/app/nginx-0.7.64目录。
herbert是我的用户名
app是应用程序的文件夹

cd nginx-0.7.64
./configure --prefix=/home/herbert/app/nginx-0.7.64
make
make install

我的习惯是再创建一个软链接 nginx

ln -s nginx-0.7.64 nginx

到此Nginx安装完成来,可以尝试运行一下。

/home/herbert/app/nginx-0.7.64/sbin/nginx

//真正的工作开始来
1、创建Hello Wold ANSI C Project工程,我们把工程的名字定为 nginx-0.7.64,同时再把工程里的nginx-0.7.64.c文件删除掉。
2、/home/herbert/Downloads/nginx-0.7.64里的所有*.h文件拷贝到/home/herbert/workspace-cpp/include/nginx目录,然后在项目的属性(点击项目右键的属性)–>C/C++ Build –>Setting中的

GCC C Compiler 选项中的 Directories 中包含头文件路径
/home/herbert/workspace-cpp/include/nginx

再在GCC C Linker 中的 Libraries 中分别添加 crypt , pcre , crypto , z库。
这个是从/home/herbert/Downloads/nginx-0.7.64/objs/Makefile这个文件得知的(改天细细研究Nginx的Make文件的时候再仔细说去了)。

3、把/home/herbert/Downloads/nginx-0.7.64里的所有*.c文件拷贝到工程的src里去,我的是/home/herbert/workspace-cpp/nginx-0.7.64/src。

4、最后就可以运行来,在这个过程中,碰到说什么没有,什么找不到的话,那个.c文件就可以从工程中删除掉,从Makefile可以看出有些源文件在此次编译过程中是多余的。

虽然说的很傻瓜式来,估计大家在实际操作的时候还会碰到很多问题。

20 Nov 09 Ubuntu关于arial32.exe的错误

用apt-get安装wine的时候出现如下错误:

--2009-11-20 22:41:29--  http://downloads.sourceforge.net/corefonts/andale32.exe
Resolving downloads.sourceforge.net... 216.34.181.59
Connecting to downloads.sourceforge.net|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://ncu.dl.sourceforge.net/project/corefonts/the%20fonts/final/andale32.exe [following]
--2009-11-20 22:41:30--  http://ncu.dl.sourceforge.net/project/corefonts/the%20fonts/final/andale32.exe
Resolving ncu.dl.sourceforge.net... 140.115.17.45
Connecting to ncu.dl.sourceforge.net|140.115.17.45|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 198384 (194K) [application/octet-stream]
Saving to: `./andale32.exe'

解决方法是:

sudo aptitude purge ttf-mscorefonts-installer ubuntu-restricted-extras

20 Nov 09 Ubuntu下的Eclipse安装SVN插件

这个问题解决来好几天,终于发现来一个帖子,解决来这个问题。

解决方法如下:

sudo apt-get remove openjdk-6-jre openjdk-6-jre-headless  openjdk-6-jre-lib
sudo apt-get install libsvn-java libsvn-javahl
sudo ln -s /usr/lib/jni/libsvnjavahl-1.so /usr/lib/jvm/java-6-sun/jre/lib/i386/client/libsvnjavahl-1.so

然后在 eclipse.ini 要加一行

-Djava.library.path=/usr/lib/jni

参考文章:

http://forum.ubuntu.org.cn/viewtopic.php?f=70&t=89018&view=next 的四楼

Page 1 of 912345...Last »