文章列表
 
您正在查看 "技术积累" 分类下的文章

2008/11/14 0:10
在catalina.bat文件中设置
set CATALINA_TMPDIR = 新临时文件存储目录
 
2008/11/08 18:57
安装SQL SERVER 2005出现“无法在 COM+ 目录中安装和配置程序集”错误处理2008-07-23 20:44

安装到Notification Services组件的时候出现以下错误提示:

无法在 COM+ 目录中安装和配置程序集 D:\Program Files\Microsoft SQL Server\90\NotificationServices\9.0.242\Bin \microsoft.sqlserver.notificationservices.dll。错误: -2146233087
错误消息: Unknown error 0x80131501
错误说明: 事务管理器可用。 (异常来自 HRESULT:0x8004D01B)

网上搜索一下,找到一个解决方法:
暂停安装,不要点击中止、忽略,也不要点击取消
按以下步骤:
1.删除注册表中的键:
•HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC 项
• HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC 项
• HKEY_CLASSES_ROOT\CID 项
2、使用cmd执行 停止MSDTC服务:net stop msdtc
3、使用cmd执行 卸载MSDTC服务:msdtc -uninstall
4、使用cmd执行 重新安装MSDTC服务:msdtc -install
最后,点击重试继续安装。
 
2008/03/12 22:46

1.下载subversion和apache的最新src包

2. 新建一个用

以下操作非特别说明皆为root用户操作

# groupadd svn

# useradd svnroot -g svn

# passwd svnroot

3. 编译安装httpd

# tar xvzf httpd-2.2.6.tar.tar

# cd httpd-2.2.6

# ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/

# make

# make install

# /usr/local/apache2/bin/apachectl start

打开浏览器http://localhost/

如果有测试页"It works!"出现则证明已经安装成功。

4. 安装Subversion

# tar xvzf Subversion-1.4.6.tar.gz

# cd Subversion-1.4.6

#./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib --enable-maintainer-mode

# make

# make install

# mkdir /home/svnroot/repository

# su - svnroot

# /usr/local/subversion/bin/svnadmin create /home/svnroot/repository/public

# /usr/local/subversion/bin/svnadmin --version

# chmod 700 /home/svnroot/repository

# exit

5. 修改Apache配置文件

# vi /usr/local/apache2/conf/httpd.conf

添加:

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

<Location /svn>
   DAV svn
   SVNParentPath /home/svnroot/repository/
   AuthzSVNAccessFile /home/svnroot/repository/authz.conf
   AuthType Basic
   AuthName "Blog:http://hi.baidu.com/zhulinywj"
   AuthUserFile /home/svnroot/repository/authfile
   Require valid-user
</Location>

# /usr/local/apache2/bin/apachectl restart

打开浏览器访问http://localhost/svn/public/

6. 权限管理

1)增加用户

# htpasswd -c /home/svnroot/repository/authfile 用户名

第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加

# htpasswd /home/svnroot/repository/authfile 用户名

加入新的用户,就不用-c了

2)权限分配

# vi /home/svnroot/repository/authz.conf

[groups]
admin=zhulinywj
guest=guest
[/]
@admin = rw
* = r
[public:/]
@admin = rw
@guest = r
* =
在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的这两行

User daemon
Group daemon

将daemon改为svnroot,组也做相应更改,让apache进程以svnroot的身份运行

User svnroot
Group svn

# /usr/local/apache2/bin/apachectl restart

访问http://localhost/svn/public

 
2008/03/12 22:46

网络传输速度的单位
我们一般说的百兆、千兆网络的单位是bps(比特率,即位/秒,bit/s),
比如我们说网卡或光纤的传输速度是百兆,也就是100Mbps的意思。
而在实际应用中(Widnwos、网际快车、迅雷等)使用的传输单位是字节/秒(Byte/s)。
电脑中1字节=8位,因此100兆的光纤速度等于12.5MB/s(即100Mbps/s除以8)。

这也只能是理论值,实际应用中还会受到诸多的影响,电磁,电脑,服务器,网络堵塞等,
一般来说只能达到理论值的七成至八成,有些的网卡能达到九成。

 
2008/03/12 22:45

1、关闭不需要tty

# vi /etc/inittab

关闭后4个控制台

禁止ctrl+alt+delete关闭命令

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

改动项生效:

/sbin/init q

2、关闭ipv6

# vi /etc/sysconfig/network

NETWORKING_IPV6=no

# vi /etc/modprobe.conf

alias net-pf-10 off
alias ipv6 off

3、关闭atime

# vi /etc/fstab

/dev/cache/cache0 /cache0               ext3    noatime,nodiratime        0 0

4、编译选项

参考:http://gentoo-wiki.com/Safe_Cflags#Xeon_w.2Fo_EM64T

# cat /proc/cpuinfo

64-bit profile (x86)

CHOST="x86_64-pc-linux-gnu"
CFLAGS="-O3 -msse2 -mmmx -Wall -W -mfpmath=sse -march=nocona -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"

32-bit profile (x86)

CHOST="i686-pc-linux-gnu"
CFLAGS="-O3 -msse2 -mmmx -Wall -W -mfpmath=sse -march=prescott -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"

5、减少TCP连接中的TIME-WAIT sockets

net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭。
net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

TCP状态:

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

 
2008/03/12 22:44

1、设置GCC编译参数

CHOST="i686-pc-linux-gnu"
CFLAGS="-O3 -msse2 -mmmx -Wall -W -mfpmath=sse -mcpu=pentium-m -march=pentium-m -pipe -fomit-frame-pointer"
CXXFLAGS="-O3 -msse2 -mmmx -Wall -W -mfpmath=sse -funroll-loops -mcpu=pentium-m -march=pentium-m -pipe -fomit-frame-pointer"

2、修改mysql 客户端最大连接数

vi sql/mysqld.cc
搜索找到下面一行:
{"max_connections", OPT_MAX_CONNECTIONS,
"The number of simultaneous clients allowed.", (gptr*) &max_connections,
(gptr*) &max_connections, 0, GET_ULONG, REQUIRED_ARG, 100, 1, 16384, 0, 1,
0},
将其中的100改为1500, 当然小点也可以,根据你的需要来,不建议改的太大。
{"max_connections", OPT_MAX_CONNECTIONS,
"The number of simultaneous clients allowed.", (gptr*) &max_connections,
(gptr*) &max_connections, 0, GET_ULONG, REQUIRED_ARG, 1500, 1, 16384, 0, 1,
0},
保存

3、安装Mysql

# ./configure --prefix=/usr/local/mysql \
--localstatedir=/var/lib/mysql \
--with-comment=Source \
--with-server-suffix=-enterprise-gpl \
--with-mysqld-user=mysql \
--without-debug \
--with-big-tables \
--with-charset=gbk \
--with-collation=gbk_chinese_ci \
--with-extra-charsets=all \
--with-pthread \
--enable-static \
--enable-thread-safe-client \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--enable-assembler \
--without-innodb \
--without-ndb-debug \
--without-isam \
--enable-local-infile \
--with-readline \
--with-raid

# make && make install

# groupadd mysql

# useradd -g mysql -d /dev/null -s /sbin/nologin mysql

# adduser -g mysql -d /dev/null -s /sbin/nologin mysql

# cd /usr/local/mysql/

# bin/mysql_install_db --user=mysql

# chown -R root:mysql .

# chown -R mysql:mysql /var/lib/mysql

# cd share/mysql

# cp my-medium.cnf /etc/my.cnf

# cp mysql.server /etc/rc.d/init.d/mysqld

# chmod 755 /etc/rc.d/init.d/mysqld

# chkconfig --add mysqld

4、添加LIB PATH

# echo "/usr/local/mysql/lib" >> /etc/ld.so.conf && ldconfig

5、启动Mysql

# /etc/rc.d/init.d/mysqld start

或者

# service mysqld start

6、设置Mysql的root密码

bin/mysqladmin -u root password 123456

修改root密码

mysql> USE mysql;

mysql> UPDATE user SET password=PASSWORD(’new_password’) WHERE user=’root’;

mysql> FLUSH PRIVILEGES;

7、设置root远程登录

# mysql -u root -p 123456

mysql> GRANT ALL PRIVILEGES ON *.* TO root@'%' identified by '123456' ;

8、关闭Mysql

# /etc/rc.d/init.d/mysqld stop

或者

# service mysqld stop

9、设置中文字符集

vi /etc/my.cnf

在[client]下面增加一行:
[client]
default-character-set = gbk

在[mysqld]下面增加三行:
[mysqld]
default-character-set = gbk
default-collation     = gbk_chinese_ci
init_connect          = 'SET NAMES gbk'

在[mysql]下面增加一行:
[mysql]
default-character-set = gbk

 
2008/03/12 22:43

linux操作系统为CentOS5.1

ftp软件源码包vsftpd-2.0.5.tar.gz

实现目标:

1) Upload目录可以上传,其他目录用户不能上传,仅能下载

2) 限定只有ftpuser可以登录FTP

3) 限定ftpuser登录后只能在安装时指定的目录,而不能进入其他目录

4) 限定用户ftpuser不能更改目录的文件的权限

5) 限定最大并发访问数为50,每个IP最多5个线程

6) 用户的下载速度为500KBytes/s

7) 超过600S没有动作就自动断线

8) 数据传输时超过120S没有动作自动断线

安装过程:

1.ftp软件源码包vsftpd-2.0.5.tar.gz上传到/usr/local/src下

2.在终端下,新建一个上传目录

mkdir /ftp/upload

3.改变目录的权限

chmod -R 755 /ftp/upload

4.添加一个新用户并使这个用户有root权限

useradd -d /ftp -s /sbin/nologin ftpuser

passwd ftpuser

chown ftpuser:root /ftp

5.跳转到/tmp目录下

cd /tmp

6.解压缩同时解归档

tar -xvzf vsftpd-2.0.5.tar.gz

7.跳转到vsftpd-2.0.5

cd vsftpd-2.0.5

8.编译及安装

make

make install

9.复制RedHat/vsftpd.pam到/etc/pam.d/ftp

cp RedHat/vsftpd.pam /etc/pam.d/ftp

10.新建/etc/vsftpd.conf配置文件

vi /etc/vsftpd.conf

在配置文件加入:

#绑定IP为192.168.0.188,其它IP不能访问

listen_address=192.168.0.188

#使用standalone启动vsftpd

listen=YES

#绑定到21端口

listen_port=21

#允许本地用户登陆

local_enable=YES

#全局配置可写

write_enable=YES

#用户上传的文件权限

local_umask=022

#使用20端口号来做数据传输

connect_from_port_20=YES

#锁定用户登录目录

chroot_local_user=YES

#所有用户登录目录

local_root=/ftp

#本地用户的下载速度为500KBytes/s

local_max_rate=500000

#客户端超过600S没有动作就自动断线

idle_session_timeout=600

#数据传输时超过120S没有动作自动断线

data_connection_timeout=120

#FTP欢迎信息

ftpd_banner=Welcome to FTP

#不检测SHELL

check_shell=NO

#可访问的最大client数目

max_clients=50

#每个ip的最大client数目

max_per_ip=5

#启用用户控制,vsftpd将在userlist_file里读取用户列表

userlist_enable=YES

#若userlist_deny为YES,则userlist_file中的用户将不能登录,

#为NO则只有userlist_file的用户可以登录

userlist_deny=NO

userlist_file=/etc/vsftpd.userlist

11.保存退出 :wq

12.编辑/etc下文件vsftpd.userlist

vi /etc/vsftpd.userlist

ftpuser

13.保存退出 :wq

14.服务启动

vsftpd &

15.查看服务状态

ps -A | grep vsftpd

16.测试:

--在windows打开IE输入:ftp://192.168.0.88,出现如下图1所示界面
clip_image002

1

--在windows中可以拷贝文件到ftp中,整个vsftp安装过程完成.

补充:

ftp监听在21端口,启用了20端口,启用了被动模式,被动模式开启65400~65410端口

防火墙设置

# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 65400:65410 -j ACCEPT

# iptables -I RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 65400:65410 -j ACCEPT

# iptables -I RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

# iptables -I RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT

# vi /etc/sysconfig/iptables

在commit前加入:-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 65400:65410 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT

# /etc/init.d/iptables restart

注意iptables要允许OUTPUT

 
2008/02/15 11:07

大多数用笔记本电脑的朋友都有一个烦恼,那就是在家里和公司的IP地址不一样,上班和回家后都得来回切换IP地址,两个字“麻烦”。最近在学Python,于是在网上查找是否Python能够胜任这份造福的工作,很幸运,找到了,这是网络上的一个实现方法,经测试通过,大家可以使用。

注:需要下面两个模块的支持,请朋友们下载自行安装

Tim Golden对WMI的包装模块

Python for Windows extensions(pywin32)

源码如下:

# -*- coding: cp936 -*-
#
# FileName: ModifyIP.py
# Date    : 2008-01-15
#

import wmi

print '正在修改IP,请稍候...'

wmiService = wmi.WMI()
colNicConfigs = wmiService.Win32_NetworkAdapterConfiguration(IPEnabled = True)

#for objNicConfig in colNicConfigs:
#    print objNicConfig.Index
#    print objNicConfig.SettingID
#    print objNicConfig.Description.encode("cp936")
#    print objNicConfig.IPAddress
#    print objNicConfig.IPSubnet
#    print objNicConfig.DefaultIPGateway
#    print objNicConfig.DNSServerSearchOrder

if len(colNicConfigs) < 1:
    print '没有找到可用的网络适配器'
    exit()
objNicConfig = colNicConfigs[0]

#for method_name in objNicConfig.methods:
#    method = getattr(objNicConfig, method_name)
#    print method

arrIPAddresses = ['172.16.151.147']
arrSubnetMasks = ['255.255.255.0']
arrDefaultGateways = ['172.16.151.1']
arrGatewayCostMetrics = [1]
arrDNSServers = ['172.16.151.10']
intReboot = 0

returnValue = objNicConfig.EnableStatic(IPAddress = arrIPAddresses, SubnetMask = arrSubnetMasks)

if returnValue[0] == 0:
    print '设置IP成功'
elif returnValue[0] == 1:
    print '设置IP成功'
    intReboot += 1
else:
    print '修改IP失败: IP设置发生错误'
    exit()
returnValue = objNicConfig.SetGateways(DefaultIPGateway = arrDefaultGateways, GatewayCostMetric = arrGatewayCostMetrics)
if returnValue[0] == 0:
    print '设置网关成功'
elif returnValue[0] == 1:
    print '设置网关成功'
    intReboot += 1
else:
    print '修改IP失败: 网关设置发生错误'
    exit()

returnValue = objNicConfig.SetDNSServerSearchOrder(DNSServerSearchOrder = arrDNSServers)
if returnValue[0] == 0:
    print '设置DNS成功'
elif returnValue[0] == 1:
    print '设置DNS成功'
    intReboot += 1
else:
    print '修改IP失败: DNS设置发生错误'
    exit()

if intReboot > 0:
    print '需要重新启动计算机'
else:
    print ''
    print '修改后的配置为:'
    print 'IP: ', ', '.join(objNicConfig.IPAddress)
    print '掩码: ', ', '.join(objNicConfig.IPSubnet)
    print '网关: ', ', '.join(objNicConfig.DefaultIPGateway)
    print 'DNS: ', ', '.join(objNicConfig.DNSServerSearchOrder)

print '修改IP结束'

功能上述已经实现了,现在我们再把它做成EXE执行文件,毕竟在Windows下,使用起来方便,一劳永逸呀!:)

1、建立编译文件setup.py

代码如下:

from distutils.core import setup
import py2exe

setup(console=['ModifyIP.py'])

2、进行编译

python setup.py py2exe

如果朋友们没有安装py2exe,请点击这里下载py2exe.exe并安装。注意要找对应于你所安装的python版本。

3、执行exe文件

编译以后会自动生成build和dist两个文件夹,生成的exe文件在dist文件夹中,我们只要保留dist文件夹下的所有文件(必须全部保留),build文件夹可以删除。

好了,我们用Python更改IP的小软件就做好了,以后来回切换就轻松多了,嘿嘿!!!

 
2008/01/29 16:03

eth0 ----\

             --绑定--> bond0

eth1 ----/

配置文件目录:

# cd /etc/sysconfig/network-scripts/

1、配置bond0

# Intel Corporation 82571EB Gigabit Ethernet Controller
DEVICE=bond0
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.10
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
TYPE=Ethernet

2、配置eth0

# ifcfg-eth0
# Intel Corporation 82571EB Gigabit Ethernet Controller
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
ONBOOT=yes

3、配置eth1

# ifcfg-eth1
# Intel Corporation 82571EB Gigabit Ethernet Controller
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
ONBOOT=yes

4、开机引导

# /etc/modprobe.conf

加入:

alias bond0 bonding

options bond0 miimon=100 mode=0

注意:

miimon 用来进行链路检测,单位:毫秒

mode可以为0, 1;0为负载均衡,1为失效保护

# vi /etc/rc.d/rc.local

加入:

ifenslave bond0 eth0 eth1
route add -net 192.168.1.0 netmask 255.255.255.0 bond0
route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.1 bond0

# reboot

# cat /proc/net/bonding/bond0

搞定,Good luck!!!

 
2008/01/29 15:29

最小化安装CentOS5.1

1、设置机器IP

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

改成:

DEVICE=eth0

BOOTPROTO=static

BROADCAST=192.168.1.255

HWADDR=00:15:17:3D:AC:7D

IPADDR=192.168.1.119

NETMASK=255.255.255.0

NETWORK=192.168.1.0

ONBOOT=yes

TYPE=Ethernet

使设置生效:

# /sbin/ifdown eth0

# /sbin/ifup eth0

# /etc/init.d/network restart

2、设置SSH的终端字符集

# cd

# vi .bash_profile

LC_ALL=zh_CN.GB18030

export LC_ALL

# source .bash_profile

# vi /etc/sysconfig/i18n

LANG="zh_CN.UTF-8"

改为LANG="zh_CN.GB18030"

# source /etc/sysconfig/i18n

3、关闭不需要的服务

# ntsysv

crond

irqbalance (仅当服务器CPU为S.M.P架构或支持双核心、HT技术时,才需开启,否则关闭)

microcode_ctl

network

vsftpd

sshd

syslog

yum-updatesd

3、更新源地址

# cd /etc/yum.repos.d

# vi CentOS-Base.repo

加入:

# CentOS-Base.repo
#
# This file uses a new #mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the #mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-5.1 - Base
#mirrorlist=http://#mirrorlist.centos.org/?release=5.1&arch=$basearch&repo=os
baseurl=http://centos.stksky.com/centos/5.1/os/$basearch/
gpgcheck=1
gpgkey=http://centos.stksky.com/centos/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-5.1 - Updates
#mirrorlist=http://#mirrorlist.centos.org/?release=5.1&arch=$basearch&repo=updates
baseurl=http://centos.stksky.com/centos/5.1/updates/$basearch/
gpgcheck=1
gpgkey=http://centos.stksky.com/centos/RPM-GPG-KEY-CentOS-5

#packages used/produced in the build but not released
[addons]
name=CentOS-5.1 - Addons
#mirrorlist=http://#mirrorlist.centos.org/?release=5.1&arch=$basearch&repo=addons
baseurl=http://centos.stksky.com/centos/5.1/addons/$basearch/
gpgcheck=1
gpgkey=http://centos.stksky.com/centos/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-5.1 - Extras
#mirrorlist=http://#mirrorlist.centos.org/?release=5.1&arch=$basearch&repo=extras
baseurl=http://centos.stksky.com/centos/5.1/extras/$basearch/
gpgcheck=1
gpgkey=http://centos.stksky.com/centos/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-5.1 - Plus
#mirrorlist=http://#mirrorlist.centos.org/?release=5.1&arch=$basearch&repo=centosplus
baseurl=http://centos.stksky.com/centos/5.1/centosplus/$basearch/
gpgcheck=1
enabled=1
gpgkey=http://centos.stksky.com/centos/RPM-GPG-KEY-CentOS-5

5、定时校正服务器时间

# yum install –y ntp

# crontab -e

0 23 * * * root /usr/sbin/ntpdate 203.117.180.36 > /dev/null 2>&1

6、更新系统

yum upgrade

7、安装开发包

yum install gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel zlib-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel openssl-devel libxml2-devel gettext-devel pcre-devel fontconfig-devel libevent-devel glib2-devel

8、优化编译参数

根据机器的实际配置参考:

http://gentoo-wiki.com/Safe_Cflags

9、服务器参数调整

参数调整:

1)vi /usr/include/bits/typesizes.h

#define __FD_SETSIZE            1024

改成

#define __FD_SETSIZE            65535

启动加载

/etc/rc.d/rc.local

2)# echo 65535 > /proc/sys/fs/file-max

3)# ulimit -HSn 65536

内核优化:

# vi /etc/sysctl.conf

仅供参考:

net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_keepalive_time=1800
net.ipv4.tcp_max_syn_backlog=8192

net.core.rmem_max = 67108864
net.core.rmem_default = 65536
net.core.wmem_max = 67108864
net.core.wmem_default = 65536
net.ipv4.tcp_rmem = 4096 87380 67108864
net.ipv4.tcp_wmem = 4096 65536 67108864
net.ipv4.tcp_mem = 67108864 67108864
net.ipv4.route.flush = 1
net.core.netdev_max_backlog = 3000

# sysctl -p

10、安装Web服务器

优化编译参数:

export CHOST="i686-pc-linux-gnu"
export CFLAGS="-O3 -msse2 -mmmx -mfpmath=sse -march=prescott -pipe -fomit-frame-pointer"
export CXXFLAGS="${CFLAGS}"

创建用户和用户组:

# groupadd www

# useradd www -s /sbin/nologin -g www

Nginx:

# tar xzvf nginx-0.5.35.tar.gz

# cd nginx-0.5.35

# ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module

# make install && make

补充:

得到Nginx主进程号:

# ps -ef | grep "nginx: master process" | grep -v "grep" | awk -F ' ' '{print $2}'

测试Nginx配置文件:

# nginx -t

启动服务:

# ulimit -SHn 51200

# nginx

停止服务:

# nginx -QUIT '主进程号'

不重启加载更新后的配置文件:

# kill -HUP '主进程号'

Lighttpd:

lighttpd-1.5.0.r1992.modcache.v.1.4.1.patch

# patch -p1 < lighttpd-1.5.0.r1992.modcache.v.1.4.1.patch

# ./configure --prefix=/usr/local/lighttpd_optimize

# make && make install

11、安装memcached服务器

# tar xzvf memcached-1.2.2.tar.gz

# cd memcached-1.2.2

# ./configure --prefix=/usr/local/memcached

# make install && make

启动服务:

# /usr/local/memcached/bin/memcached -d -m 50 -p 11211 -u root

参数说明:

-m 缓存空间MB

-p 监听的端口

-u 用户

12、XFS文件系统

# uname -a

Linux centos32.ctid.com.cn 2.6.18-53.1.4.el5.centos.plusPAE #1 SMP Fri Dec 7 07:40:34 EST 2007 i686 i686 i386 GNU/Linux

# yum install xfsprogs kmod-xfs-PAE

# modprobe xfs

# lsmod | grep xfs
xfs                   514632 0

# umount /cache0

# mkfs.xfs -f -i size=512 -l size=128m -d agcount=4 /dev/cache/cache0

# vi /etc/fstab

/dev/cache/cache0 /cache0                xfs     noatime,nodiratime         1 2

# mount -t xfs /dev/cache/cache0 /cache0

13、安装Squid3

优化编译参数:

export CHOST="i686-pc-linux-gnu"
export CFLAGS="-O3 -march=prescott -pipe -fomit-frame-pointer"
export CXXFLAGS="${CFLAGS}"

./configure --prefix=/usr/local/squid \
--enable-dlmalloc \
--enable-debug-cbdata \
--enable-async-io=100 \
--with-pthreads \
--enable-storeio="aufs,coss,diskd,ufs" \
--enable-removal-policies="heap,lru" \
--enable-icmp \
--enable-delay-pools \
--enable-useragent-log \
--enable-referer-log \
--disable-wccp \
--disable-wccpv2 \
--enable-kill-parent-hack \
--enable-arp-acl \
--enable-snmp \
--enable-default-err-language=Simplify_Chinese \
--enable-err-languages="Simplify_Chinese English" \
--disable-poll \
--enable-epoll \
--disable-ident-lookups \
--disable-internal-dns \
--enable-truncate \
--enable-underscores \
--enable-basic-auth-helpers="NCSA" \
--enable-stacktrace \
--with-winbind-auth-challenge \
--enable-large-cache-files \
--with-maxfd=65535\
--enable-ssl \
--enable-x-accelerator-vary \
--with-large-files(64-bit 不要此项)

 
   
 
 
文章分类
 
   
 
文章存档
 
     
 
最新文章评论
  

很赞啊,真的很详细,顺便问一句,BIOS出来后的截图是怎么弄的
 

哎,这个一定要顶,这8篇我都保存下来了。 非常有用啊。。
 

好东西。最近也在搭建squid应用,学习了
 

你这方法装一大堆东西,直接用cmd的 netsh interface ip set address 不是更快吗?
 

为什么不把code作者的邮箱还有姓名也放上来?可以删可不好
   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu