存档
-
ipw3945
T60所使用的無線網路晶片是Intel PRO/Wireless 3945ABG,而目前在Debian testing上還沒有支援這一塊無線網卡。所以我們要手動來將這晶片驅動。Intel有將驅動程式放在 [url]http://ipw3945.sourceforge.net/[/url] ,此網站上也有著安裝步驟說明。以下是比較簡短的安裝示範,其中也會針對Debian的修改步驟做出說明。
在安裝模組之前,相關的編譯工具以及kernel-header請一併裝好,不然會困難重重:
代碼:
# aptitude install build-essential
# aptitude install linux-headers-$(uname -r)
安裝binary microcode image
1. 到 [url]http://bughost.org/ipw3945/[/url] 下載 [url]http://bughost.org/ipw3945/ucode/ipw3945-ucode-1.13.tgz[/url] (版本可能會更新,請以網頁上的下載點為主)
2. 解壓縮後,進去該目錄將ipw3945.ucode複製到/lib/firmware/
代碼:
# tar zxvf ipw3945-ucode-1.13.tgz
# cd ipw3945-ucode-1.13
# cp ipw3945.ucode /lib/firmware/
* 安裝binary user space regulatory daemon
1. 到 [url]http://bughost.org/ipw3945/[/url] 下載 [url]http://bughost.org/ipw3945/daemon/ipw3945d-1.7.22.tgz[/url] (版本可能會更新,請以網頁上的下載點為主)
2. 解壓縮後,進去該目錄參考README.ipw3945d的說明。簡短的步驟如下:
代碼:
# tar zxvf ipw3945d-1.7.22.tgz
# cd ipw3945d-1.7.22
# [...]2007年7月14日 | 归档于 早期帖子 -
Intel(R) 82562v 1000M
NOTE: The Intel(R) 82562v 10/100 Network Connection only provides 10/100
support.
Identifying Your Adapter
========================
For more information on how to identify your adapter, go to the Adapter &
Driver ID Guide at:
[url]http://support.intel.com/support/network/adapter/pro100/21397.htm[/url]
For the latest Intel network drivers for Linux, refer to the following
website. In the search field, enter your adapter name or type, or [...]2007年7月14日 | 归档于 早期帖子 -
Linux单网卡绑定多IP与多网卡共用单IP
在Linux下有时候需要给一个网卡绑定多个IP,本文介绍在Redhat系列(redhat,Fedora Core,Centos)中的实现方法和一种在Gentoo等其他Linux中普遍适用的方法。
1、单网卡绑定多IP在Redhat系列中的实现方法
假设需要绑定多IP的网卡是eth0,请在/etc/sysconfig/network-scripts目录里面创建一个名为ifcfg-eth0:0的文件,
内容样例为:
[code] DEVICE=”eth0:0″
IPADDR=”192.168.0.2″
BROADCAST=”172.168.0.255″
NETMASK=”255.255.255.0″
ONBOOT=”yes” [/code]
其中的DEVICE为设备的名称,
IPADDR为此设备的IP地址,
BROADCAST是广播地址,
NETMASK为子网掩码,
ONBOOT 表示在系统启动时自动启动。
如果需要再绑定多一个IP地址,
只需要把文件名和文件内的DEVICE中的eth0:x加一即可。
LINUX最多可以支持255个IP别名
2、普遍适用的单网卡绑定多IP实现方法
ifconfig eth0:1 192.168.0.3 broadcast 192.168.0.255 netmask 255.255.255.0
可以把上述命令加在启动自运行文件里面,在Gentoo下是/etc/conf.d/local.start,而某些版本的Linux是/etc/rc.d/rc.local。
3、多网卡共用单IP的实现方法
使用多块网卡虚拟成为一块网卡,具有相同的IP地址。这项技术其实在sun和cisco中已经存在,分别称为Trunking和 etherchannel技术,在linux中,这种技术称为bonding。因为bonding在内核2.4.x中已经包含了,只需要在编译的时候把网络设备选项中的 Bonding driver support选中就可以了。
然后,重新编译核心,重新起动计算机,执行如下命令:
[code] ismod bonding
ifconfig eth0 down
ifconfig eth1 down
ifconfig bond0 ipaddress
ifenslave bond0 eth0
ifenslave bond0 eth1 [/code]
现在两块网卡已经象一块一样工作了,这样可以提高集群节点间的数据传输。
你最好把这几句写成一个脚本,再由/etc/rc.d/rc.local或者/etc/conf.d/local.start调用,以便一开机就生效。
bonding对于服务器来是个比较好的选择,在没有千兆网卡时,用两三块100兆网卡作 bonding,可大大提高服务器到交换机之间的带宽。但是需要在交换机上设置连接bonding 网卡的两个口子映射为同一个虚拟接口。2007年6月19日 | 归档于 早期帖子 -
Locale详解
locale 是国际化与本土化过程中的一个非常重要的概念,个人认为,对于中文用户来说,通常会涉及到的国际化或者本土化,大致包含三个方面:看中文,写中文,与 window中文系统的兼容和通信。从实际经验上看来,locale的设定与看中文关系不大,但是与写中文,及window分区的挂载方式有很密切的关 系。本人认为就像一个纯英文的Windows能够浏览中文,日文或者意大利文网页一样,你不需要设定locale就可以看中文。那么,为什么要设定 locale呢?什么时候会用到locale呢?
Tags: locale 设定 原因 解释
一、为什么要设定locale 正如前面我所讲的,设定locale与你能否浏览中文的网页没有直接的关系,即便你把locale设置成en_US.ISO-8859-1这样一个标准的 英文locale你照样可以浏览中文的网页,只要你的系统里面有相应的字符集(这个都不一定需要)和合适的字体(如simsun),浏览器就可以把网页翻 译成中文给你看。具体的过程是网络把网页传送到你的机器上之后,浏览器会判断相应的编码的字符集,根据网页采用的字符集,去字体库里面找合适的字体,然后 由文字渲染工具把相应的文字在屏幕上显示出来。
在下文本人会偶尔把字符集比喻成密码本,个人觉得对于一些东西比较容易理解,假如你不习惯的话,把全文copy到任何文本编辑器,用字符集替换密码本即可。
那有时候网页显示乱码或者都是方框是怎么回事呢?个人认为,显示乱码是因为设定的字符集不对(或者没有相应的字符集),例如网页是用UTF-8编码的,你 非要用GB2312去看,而系统根据GB2312去找字体,然后在屏幕上显示,当然是一堆的乱码,也就是说你用一个错误的密码本去翻译发给你的电报,当然 内容那叫一个乱;至于有些时候浏览的网页能显示一部分汉字,但有很多的地方是方框,能够显示汉字说明浏览器已经正确的判断出了网页的编码,并在字体库里面 找到了相应的文字,但是并不是每个字体库都包含某个字符集全部的字体的缘故,有些时候会显示不完全,找一个比较全的支持较多字符集的字体就可以了。
既然我能够浏览中文网页,那为什么我还要设定locale呢?
其实你有没有想过这么一个问题,为什么gentoo官方论坛上中文论坛的网页是用UTF-8编码的(虽然大家一直强烈建议用GB2312编码),但是新浪 网就是用GB2312编码的呢?而Xorg的官方网页竟然是ISO-8859-15编码的,我没有设定这个locale怎么一样的能浏览呢?这个问题就像 是你有所有的密码本,不论某个网站是用什么字符集编码的,你都可以用你手里的密码本把他们翻译过来,但问题是虽然你能浏览中文网页,但是在整个操作系统里 面流动的还是英文字符。所以,就像你能听懂英语,也能听懂中文。 最根本的问题是:你不可以写中文。
当你决定要写什么东西的时候,首先要决定的一件事情是用那种语言,对于计算机来说就是你要是用哪一种字符集,你就必须告诉你的linux系统,你想用那一 本密码本去写你想要写的东西。知道为什么需要用GB2312字符集去浏览新浪了吧,因为新浪的网页是用GB2312写的。
为了让你的Linux能够输入中文,就需要把系统的locale设定成中文的(严格说来是locale中的语言类别LC_CTYPE ),例如zh_CN.GB2312、zh_CN.GB18030或者zh_CN.UTF-8。很多人都不明白这些古里古怪的表达方式。这个外星表达式规定 了什么东西呢?这个问题稍后详述,现在只需要知道,这是locale的表达方式就可以了。
二、到底什么是locale? locale这个单词中文翻译成地区或者地域,其实这个单词包含的意义要宽泛很多。Locale是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的一个软件运行时的语言环境。
这个用户环境可以按照所涉及到的文化传统的各个方面分成几个大类,通常包括用户所使用的语言符号及其分类(LC_CTYPE),数字 (LC_NUMERIC),比较和排序习惯(LC_COLLATE),时间显示格式(LC_TIME),货币单位(LC_MONETARY),信息主要是 提示信息,错误信息, 状态信息, 标题, 标签, 按钮和菜单等(LC_MESSAGES),姓名书写方式(LC_NAME),地址书写方式(LC_ADDRESS),电话号码书写方式 (LC_TELEPHONE),度量衡表达方式(LC_MEASUREMENT),默认纸张尺寸大小(LC_PAPER)和locale对自身包含信息的 概述(LC_IDENTIFICATION)。
所以说,locale就是某一个地域内的人们的语言习惯和文化传统和生活习惯。一个地区的locale就是根据这几大类的习惯定义的,这些locale定 义文件放在/usr/share/i18n/locales目录下面,例如en_US, [...]2007年6月2日 | 归档于 早期帖子 -
zend optimizer安装不成功可能的原因
zend optimizer安装不成功可能的原因
关闭SELinux:
修改/etc/selinux/config文件中的SELINUX=”” 为 disabled ,重启2007年5月31日 | 归档于 早期帖子 -
使用mod_limitipconn限制Apache的并发连接数
mod_limitipconn可以控制每个IP地址同时连接服务器某一个目录的并发连接数,是一个非常有用的模块,其官方网页是[url]http://dominia.org/djao/limitipconn2.html[/url],支持Apache 2.x的模块下载,本人使用httpd-2.2.3版本。
mod_limitipconn for Apache 2.x提供三种安装方式,分别是tar包、rpm安装文件和rpm源文件,我们一般都使用tar包的安装方式。
tar xzvf mod_limitipconn-0.22.tar.gz
cd mod_limitipconn-0.22
/opt/app/apache2/bin/apxs -c -i -a mod_limitipconn.c #对mod_limitipconn.c进行编译,此命令会自动在你Apache的配置文件httpd.conf中加入需要的信息,并且将生成的mod_limitipconn.so模块拷贝到Apache的模块目录。
不过为了确认此命令是否正常运作,请首先检查自己的Apache模块目录,看内部是否含有mod_limitipconn.so文件,没有的话请将mod_limitipconn-0.04目录中生成的文件拷贝到此处。
make install
然后请确认mod_status模块已经加载,LoadModule status_module modules/mod_status.so
并且在mod_status下添加了ExtendedStatus On这一行。
这时我们的mod_limitipconn模块就安装完毕
mod_limitipconn可以对全局和虚拟主机进行不同的限制,其语法结构都是#所限制的目录所在,此处表示主机的根目录
MaxConnPerIP 3 #所限制的每个IP并发连接数为3个
NoIPLimit image/* #对图片不做IP限制#所限制的目录所在,此处表示主机的/mp3目录
MaxConnPerIP 1 #所限制的每个IP并发连接数为1个
OnlyIPLimit audio/mpeg video #该限制只对视频和音频格式的文件当对全局进行限制时,将这段代码放在httpd.conf文件没有VirtualHost的地方,若是对某个虚拟主机进行限制,请将其放在和之间,我们可以通过更改Location以及MaxConnPerIP方便的控制所限制的目录和并发连接数。
最后,只要重新启动Apache服务,并发连接数的限制就可以生效。2007年4月18日 | 归档于 早期帖子 -
mysql常见错误解决方法
mysql常见错误解决方法
InnoDB: Unable to lock ./ibdata1, error: 11
ps -ef|grep mysqld ,杀死僵死进程
然后重新启动mysql
———————————————————————————
error while loading shared libraries: libssl.so.0.9.8:
更新db,openssl
pacman -S db ,openssl
这样就不会出现找不到连接库文件了
———————————————————————————
mysqld启动不了
[root@philix lib]# /usr/sbin/mysqld 060715 21:16:36 [ERROR] Fatal error: Please read “Security” section of the manual to find out how to run mysqld as root! 060715 21:16:36 [ERROR] Aborting 060715 21:16:36 [Note] /usr/sbin/mysqld: Shutdown complete
解决办法:在/etc/my.conf中的mysqld加入
user=mysql
———————————————————————————————————
[ERROR] Fatal error: Can’t open [...]2007年4月17日 | 归档于 早期帖子 -
Apache2.0性能优化
[ 作者: 加入时间:2006-11-09 11:07:18 来自:Linux联盟收集 ]
谈到Apache,大多数系统管理员对其稳定版1.3印象颇深。虽然Apache 2.0的系列开发版早已由Alpha、Beta发展到现在的GA(General Availability)版,但是一些人潜意识里还认为开发版并非可用于生产环境的稳定版本。尤其是1.3版的API与2.0版不兼容,使得大量模块必须要重写才能在2.0版上使用。Apache 1.3和2.0之间的内部变化的确较大,用Apache创始人Brian Behlendorf自己的话来说:“这个版本包括了数百个新的特性,所以这个产品应该具有3.1或8i这样的产品编号,而不是2.0。”Apache 2.0中加入了很多的核心改进和新功能,如Unix线程、多协议支持、新的构建系统、对非Unix平台的更佳支持、IPv6支持、新的Apache API、过滤器、多语言错误响应、原生的Windows NT Unicode支持、更简单化的配置,以及升级的正则表达式库等。它当然还包括对许多模块的重要改进,同时也加入了一些新的模块。
为了使Apache更加平滑地从1.3版升级到2.0版,Apache开发团队做了很多工作。目前很多重要的模块已经可以很好地支持2.0版,如 PHP、FastCGI、Mod_perl、Mod_python等。在httpd.conf的指令配置语法上,目前的2.0版(2.0.45)与1.3 版的兼容性已做得相当好。比如,以前的2.0版如果要使用PHP,一般用过滤器实现;现在的PHP官方文档中已经使用1.3版中的LoadModule语句做为加载PHP的推荐方式。只要略微了解一下Apache 2.0的新特性,从1.3版升级到2.0版将是一件非常容易的事情。使用Apache 2.0是大势所趋,因为Apache的开发团队已经把开发重心转移到2.0版上。1.3版自2002年10月发布了1.3.27后一直没有新版本推出,而 2.0版在与1.3.27同时发布2.0.43后,在今年1月发布了2.0.44,并于今年3月末发布了2.0.45,并包含了很多改进和修正。
MPM的引入带来性能改善
Apache 2.0在性能上的改善最吸引人。在支持POSIX线程的Unix系统上,Apache可以通过不同的MPM运行在一种多进程与多线程相混合的模式下,增强部分配置的可扩充性能。相比于Apache 1.3,2.0版本做了大量的优化来提升处理能力和可伸缩性,并且大多数改进在默认状态下即可生效。但是在编译和运行时刻,2.0也有许多可以显著提高性能的选择。本文不想叙述那些以功能换取速度的指令,如HostnameLookups等,而只是说明在2.0中影响性能的最核心特性:MPM(Multi -Processing Modules,多道处理模块)的基本工作原理和配置指令。
毫不夸张地说,MPM的引入是Apache 2.0最重要的变化。大家知道,Apache是基于模块化的设计,而Apache 2.0更扩展了模块化设计到Web服务器的最基本功能。服务器装载了一种多道处理模块,负责绑定本机网络端口、接受请求,并调度子进程来处理请求。扩展模块化设计有两个重要好处:
◆ Apache可以更简洁、有效地支持多种操作系统;
◆ 服务器可以按站点的特殊需要进行自定制。
在用户级,MPM看起来和其它Apache模块非常类似。主要区别是在任意时刻只能有一种MPM被装载到服务器中。
指定MPM的方法
下面以Red Hat Linux 9为平台,说明在Apache 2.0中如何指定MPM (Apache采用2.0.45)。先解压缩源代码包httpd-2.0.45.tar.gz,生成httpd-2.0.45目录(Apache 1.3源代码包的命名规则是apache_1.3.NN.tar.gz,而2.0版则是httpd-2.0.NN.tar.gz,其中NN是次版本号)。
进入httpd-2.0.45目录,运行以下代码:
$ ./configure –help|grep mpm
显示如下:
–with-mpm=MPM
Choose the process model for Apache to use.
MPM={beos|worker|prefork|mpmt_os2| perchild|leader|threadpool}
上述操作用来选择要使用的进程模型,即哪种MPM模块。Beos、mpmt_os2分别是BeOS和OS/2上缺省的MPM,perchild主要设计目的是以不同的用户和组的身份来运行不同的子进程。这在运行多个需要CGI的虚拟主机时特别有用,会比1.3版中的SuExec机制做得更好。 leader和threadpool都是基于worker的变体,还处于实验性阶段,某些情况下并不会按照预期设想的那样工作,所以Apache官方也并不推荐使用。因此,我们主要阐述prefork和worker这两种和性能关系最大的产品级MPM ( 有关其它的MPM详细说明,请参见Apache官方文档:[url]http://httpd.apache.org/docs-2.0/mod/[/url])。
prefork的工作原理及配置
如果不用“–with-mpm”显式指定某种MPM,prefork就是Unix平台上缺省的MPM。它所采用的预派生子进程方式也是Apache 1.3中采用的模式。prefork本身并没有使用到线程,2.0版使用它是为了与1.3版保持兼容性;另一方面,prefork用单独的子进程来处理不同的请求,进程之间是彼此独立的,这也使其成为最稳定的MPM之一。
若使用prefork,在make编译和make install安装后,使用“httpd -l”来确定当前使用的MPM,应该会看到prefork.c(如果看到worker.c说明使用的是worker MPM,依此类推)。再查看缺省生成的httpd.conf配置文件,里面包含如下配置段:StartServers [...]
2007年4月17日 | 归档于 早期帖子 -
[转]my.ini与mysql优化指南(mysql4.0 myslq5.0 or 5.x)
mysql优化了
所以先说说这个,其实这个,很复杂,对于不同的网站,其在线,访问量,帖子数量,网络情况,以及机器配置
都有关系,优化不是一次可以完成的,需要不断的观察和调试,以取得最佳效果
下面我引用 Asiwish和老高的两篇优化措施,给大家看看
这些设置,只要通过修改 win2000的c:/winnt/my.ini 或者 win2003的 c:/windows/my.ini 来实现
首先,我们打开这个文件,先将最底部的密码项改成其它的,这个对数据库本身没影响,主要是防止一些有心人获取这个密码,对我们不利
然后大家看看两个例子,其中一些设置,略懂的英文的,即明白是什么意思,
不懂得可以去查单词,我懒得一个个对照写说明了
一个是 千人在线,1G内存的
#This File was made using the WinMySQLAdmin 1.4 Tool
#2004-2-23 16:28:14
#Uncomment or Add only the keys that you know how works.
#Read the MySQL Manual for instructions
[mysqld]
basedir=D:/mysql
#bind-address=210.5.*.*
datadir=D:/mysql/data
#language=D:/mysql/share/your language directory
#slow query log#=
#tmpdir#=
#port=3306
set-variable = max_connections=1500
skip-locking
#skip-networking
set-variable = key_buffer=384M
set-variable = max_allowed_packet=1M
set-variable [...]2007年3月31日 | 归档于 早期帖子 -
写得蛮好的linux学习笔记 linux目录架构
——————————————————————————–
/ 根目录
/bin 常用的命令 binary file 的目錄
/boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内
/boot/grub/menu.lst GRUB设置
/boot/vmlinuz 内核
/boot/initrd 核心解壓縮所需 RAM Disk
/dev 系统周边设备
/etc 系统相关设定文件
[...]2007年3月16日 | 归档于 早期帖子