Linux+Apache的稳定性、安全性和性能以及低廉的价格正在赢得越来越多的市场份额,使用Linux+Apache作网站服务器的朋友也越来越多,而Apache作为一种http服务,相比FTP总是不容易控制,特别是当网站以http方式提供软件/音乐下载时,若是每个用户都开启多个线程并没有带宽的限制,将很快达到http的最大连接数或者造成网络壅塞,使得网站的许多正常服务都无法运行。不过,Apache的使用者们早已开发出了mod_limitipconn和mod_bandwidth两个模块,来控制http的并发连接数和用户所能够使用的带宽,下面将以RedHat Linux 7.3+Apache 1.3.7来说明它们的使用方法。
一、使用mod_limitipconn限制Apache的并发连接数
mod_limitipconn可以控制每个IP地址同时连接服务器某一个目录的并发连接数,是一个非常有用的模块,其官方网页是http://dominia.org/djao/limitipconn.html,最新版本为for Apache 1.3.7的0.04,并且还有支持Apache 2.x的模块下载,由于本人使用Apache 1.3.7版本,所以请使用2.x版本Apache的朋友到其官方网站察看具体的使用方法。
mod_limitipconn for Apache 1.3x提供三种安装方式,分别是tar包、rpm安装文件和rpm源文件,由于rpm包只能用在 RedHat 7.x 版本,并且不支持检测代理服务器,所以我们一般都使用tar包的安装方式。
以管理员方式登陆服务器,然后在服务器上运行wget http://dominia.org/djao/limit/mod_limitipconn-0.04.tar.gz将mod_limitipconn的tar包下载到服务器,然后按照再运行tar zxvf mod_limitipconn-0.04.tar.gz将tar包解压缩,会在当前目录下生成mod_limitipconn-0.04目录,然后cd mod_limitipconn-0.04进入此目录,下一步就是使用apxs将目录中的mod_limitipconn.c编译。这时,我们需要确定自己的Apache安装在那个目录,并且找到apxs命令放在哪里。
通过命令whereis apxs,我们可以确定apxs命令的路径,如我的apxs命令所在为/usr/sbin/apxs,则输入/usr/sbin/apxs -c -i -a mod_limitipconn.c对mod_limitipconn.c进行编译,此命令会自动在你Apache的配置文件httpd.conf中加入需要的信息,并且将生成的mod_limitipconn.so模块拷贝到Apache的模块目录。不过为了确认此命令是否正常运作,请首先检查自己的Apache模块目录(我的是/usr/lib/apache),看内部是否含有mod_limitipconn.so文件,没有的话请将mod_limitipconn-0.04目录中生成的文件拷贝到此处。
一、使用mod_limitipconn限制Apache的并发连接数
mod_limitipconn可以控制每个IP地址同时连接服务器某一个目录的并发连接数,是一个非常有用的模块,其官方网页是http://dominia.org/djao/limitipconn.html,最新版本为for Apache 1.3.7的0.04,并且还有支持Apache 2.x的模块下载,由于本人使用Apache 1.3.7版本,所以请使用2.x版本Apache的朋友到其官方网站察看具体的使用方法。
mod_limitipconn for Apache 1.3x提供三种安装方式,分别是tar包、rpm安装文件和rpm源文件,由于rpm包只能用在 RedHat 7.x 版本,并且不支持检测代理服务器,所以我们一般都使用tar包的安装方式。
以管理员方式登陆服务器,然后在服务器上运行wget http://dominia.org/djao/limit/mod_limitipconn-0.04.tar.gz将mod_limitipconn的tar包下载到服务器,然后按照再运行tar zxvf mod_limitipconn-0.04.tar.gz将tar包解压缩,会在当前目录下生成mod_limitipconn-0.04目录,然后cd mod_limitipconn-0.04进入此目录,下一步就是使用apxs将目录中的mod_limitipconn.c编译。这时,我们需要确定自己的Apache安装在那个目录,并且找到apxs命令放在哪里。
通过命令whereis apxs,我们可以确定apxs命令的路径,如我的apxs命令所在为/usr/sbin/apxs,则输入/usr/sbin/apxs -c -i -a mod_limitipconn.c对mod_limitipconn.c进行编译,此命令会自动在你Apache的配置文件httpd.conf中加入需要的信息,并且将生成的mod_limitipconn.so模块拷贝到Apache的模块目录。不过为了确认此命令是否正常运作,请首先检查自己的Apache模块目录(我的是/usr/lib/apache),看内部是否含有mod_limitipconn.so文件,没有的话请将mod_limitipconn-0.04目录中生成的文件拷贝到此处。
当apache站点受到严重的cc攻击,我们可以用iptables来防止web服务器被CC攻击,实现自动屏蔽IP的功能。
1.系统要求
(1)LINUX 内核版本:2.6.9-42ELsmp或2.6.9-55ELsmp(其它内核版本需要重新编译内核,比较麻烦,但是也是可以实现的)。
(2)iptables版本:1.3.7
2. 安装
安装iptables1.3.7和系统内核版本对应的内核模块kernel-smp-modules-connlimit
3. 配置相应的iptables规则
示例如下:
(1)控制单个IP的最大并发连接数
iptables -I INPUT -p tcp --dport 80 -m connlimit \
--connlimit-above 50 -j REJECT
#允许单个IP的最大连接数为 30(2)控制单个IP在一定的时间(比如60秒)内允许新建立的连接数
iptables -A INPUT -p tcp --dport 80 -m recent \
--name BAD_HTTP_ACCESS --update --seconds 60 \
--hitcount 30 -j REJECT
iptables -A INPUT -p tcp --dport 80 -m recent \
--name BAD_HTTP_ACCESS --set -j ACCEPT
#单个IP在60秒内只允许最多新建30个连接4. 验证
(1)工具:flood_connect.c(用来模拟攻击)
(2)查看效果:
使用
watch 'netstat -an | grep:21 | \ grep<模拟攻击客户机的IP>| wc -l'实时查看模拟攻击客户机建立起来的连接数,
使用
watch 'iptables -L -n -v | \grep<模拟攻击客户机的IP>'查看模拟攻击客户机被 DROP 的数据包数。
5.注意
为了增强iptables防止CC攻击的能力,最好调整一下ipt_recent的参数如下:
#cat/etc/modprobe.conf
options ipt_recent ip_list_tot=1000 ip_pkt_list_tot=60
#记录1000个IP地址,每个地址记录60个数据包
#modprobe ipt_recent
本文来自黑色电视机,原文地址:http://www.blacktv.com.cn
1.系统要求
(1)LINUX 内核版本:2.6.9-42ELsmp或2.6.9-55ELsmp(其它内核版本需要重新编译内核,比较麻烦,但是也是可以实现的)。
(2)iptables版本:1.3.7
2. 安装
安装iptables1.3.7和系统内核版本对应的内核模块kernel-smp-modules-connlimit
3. 配置相应的iptables规则
示例如下:
(1)控制单个IP的最大并发连接数
iptables -I INPUT -p tcp --dport 80 -m connlimit \
--connlimit-above 50 -j REJECT
#允许单个IP的最大连接数为 30(2)控制单个IP在一定的时间(比如60秒)内允许新建立的连接数
iptables -A INPUT -p tcp --dport 80 -m recent \
--name BAD_HTTP_ACCESS --update --seconds 60 \
--hitcount 30 -j REJECT
iptables -A INPUT -p tcp --dport 80 -m recent \
--name BAD_HTTP_ACCESS --set -j ACCEPT
#单个IP在60秒内只允许最多新建30个连接4. 验证
(1)工具:flood_connect.c(用来模拟攻击)
(2)查看效果:
使用
watch 'netstat -an | grep:21 | \ grep<模拟攻击客户机的IP>| wc -l'实时查看模拟攻击客户机建立起来的连接数,
使用
watch 'iptables -L -n -v | \grep<模拟攻击客户机的IP>'查看模拟攻击客户机被 DROP 的数据包数。
5.注意
为了增强iptables防止CC攻击的能力,最好调整一下ipt_recent的参数如下:
#cat/etc/modprobe.conf
options ipt_recent ip_list_tot=1000 ip_pkt_list_tot=60
#记录1000个IP地址,每个地址记录60个数据包
#modprobe ipt_recent
本文来自黑色电视机,原文地址:http://www.blacktv.com.cn
useradd -d /home/xxxx -s /sbin/nologin
useradd -d /home/xxxx -s /sbin/nologin xxxxx
linux useradd 命令详解
功能说明:建立用户帐号。
语 法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ][-u ][用户帐号] 或 useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ]
补充说明:useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。
参 数:
-c<备注> 加上备注文字。备注文字会保存在passwd的备注栏位中。
-d<登入目录> 指定用户登入时的启始目录。
-D 变更预设值.
-e<有效期限> 指定帐号的有效期限。
-f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
-g<群组> 指定用户所属的群组。
-G<群组> 指定用户所属的附加群组。
-m 自动建立用户的登入目录。
-M 不要自动建立用户的登入目录。
-n 取消建立以用户名称为名的群组.
-r 建立系统帐号。
-s 指定用户登入后所使用的shell。
-u 指定用户ID。
useradd -d /home/xxxx -s /sbin/nologin xxxxx
linux useradd 命令详解
功能说明:建立用户帐号。
语 法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ][-u ][用户帐号] 或 useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ]
补充说明:useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。
参 数:
-c<备注> 加上备注文字。备注文字会保存在passwd的备注栏位中。
-d<登入目录> 指定用户登入时的启始目录。
-D 变更预设值.
-e<有效期限> 指定帐号的有效期限。
-f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
-g<群组> 指定用户所属的群组。
-G<群组> 指定用户所属的附加群组。
-m 自动建立用户的登入目录。
-M 不要自动建立用户的登入目录。
-n 取消建立以用户名称为名的群组.
-r 建立系统帐号。
-s 指定用户登入后所使用的shell。
-u 指定用户ID。
要支持扩展,编译了好几次,也许是版本匹配的问题,
最后终于编译成功了:
把关键部分写一下:
mkdir /usr/local/modules
——————————————————————
开始编译:
tar -zxf zlib-1.2.3.tar.tar
ls
cd zlib
cd zlib-1.2.3
./configure --prefix=/usr/local/zlib
make
make install
cd ..
————————————————————
tar zxvf freetype-2.3.7.tar.gz
cd freetype-2.3.7
ls
./configure --prefix=/usr/local/modules/freetype
make
make install
freetype编译完毕
——————————————————————
wget http://prdownloads.sourceforge.net/png-mng/libpng-1.2.5.tar.gz?download
tar zxvf libpng-1.2.5.tar.gz
cd libpng-1.2.5
ls
cp scripts/makefile.linux makefile
cp scripts/makefile.linux makefile
make test
make install
——————————————————
cd ..
wget ftp://ftp.ro.debian.org/pub/mirrors/openwrt.org/sources/jpegsrc.v6b.tar.gz
tar -xzvf jpegsrc.v6b.tar.gz
ls
cd jpeg-6b/
mkdir /usr/local/modules/jpeg6
mkdir /usr/local/modules/jpeg6/bin
mkdir /usr/local/modules/jpeg6/lib
mkdir /usr/local/modules/jpeg6/include
mkdir /usr/local/modules/jpeg6/man
mkdir /usr/local/modules/jpeg6/man/man1
./configure --prefix=/usr/local/modules/jpeg6 --enable-shared --enable-static
make
make install
————————————————————
cd ..
tar -xzvf gd-2.0.35.tar.gz
cd gd-2.0.35
ls
./configure --prefix=/usr/local/modules/gd --with-jpeg=/usr/local/modules/jpeg6 --with-png --with-zlib --with-freetype=/usr/local/modules/freetype
make
make install
cd ..
——————————————————
开始编译php:
tar -xzvf php-5.2.6.tar.gz
cd php-5.2.6
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-freetype-dir=/usr/local/modules/freetype/ --with-mysql=/usr/local/mysql --with-zlib --with-libxml-dir=/usr/local/libxml --enable-shared --with-gd=/usr/local/modules/gd/ --with-jpeg-dir=/usr/local/modules/jpeg6/ --with-png-dir --enable-mbstring=all --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-gd-native-ttf
make
make test
make install
———————————————————
编译完毕。
重启apache服务。
注:在编译的过程中,如果发现错误,什么目录没有,就mkdir建立。之后再编译。
看phpinfo是否支持你想要的模块,若没有再编译即可。
最后终于编译成功了:
把关键部分写一下:
mkdir /usr/local/modules
——————————————————————
开始编译:
tar -zxf zlib-1.2.3.tar.tar
ls
cd zlib
cd zlib-1.2.3
./configure --prefix=/usr/local/zlib
make
make install
cd ..
————————————————————
tar zxvf freetype-2.3.7.tar.gz
cd freetype-2.3.7
ls
./configure --prefix=/usr/local/modules/freetype
make
make install
freetype编译完毕
——————————————————————
wget http://prdownloads.sourceforge.net/png-mng/libpng-1.2.5.tar.gz?download
tar zxvf libpng-1.2.5.tar.gz
cd libpng-1.2.5
ls
cp scripts/makefile.linux makefile
cp scripts/makefile.linux makefile
make test
make install
——————————————————
cd ..
wget ftp://ftp.ro.debian.org/pub/mirrors/openwrt.org/sources/jpegsrc.v6b.tar.gz
tar -xzvf jpegsrc.v6b.tar.gz
ls
cd jpeg-6b/
mkdir /usr/local/modules/jpeg6
mkdir /usr/local/modules/jpeg6/bin
mkdir /usr/local/modules/jpeg6/lib
mkdir /usr/local/modules/jpeg6/include
mkdir /usr/local/modules/jpeg6/man
mkdir /usr/local/modules/jpeg6/man/man1
./configure --prefix=/usr/local/modules/jpeg6 --enable-shared --enable-static
make
make install
————————————————————
cd ..
tar -xzvf gd-2.0.35.tar.gz
cd gd-2.0.35
ls
./configure --prefix=/usr/local/modules/gd --with-jpeg=/usr/local/modules/jpeg6 --with-png --with-zlib --with-freetype=/usr/local/modules/freetype
make
make install
cd ..
——————————————————
开始编译php:
tar -xzvf php-5.2.6.tar.gz
cd php-5.2.6
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-freetype-dir=/usr/local/modules/freetype/ --with-mysql=/usr/local/mysql --with-zlib --with-libxml-dir=/usr/local/libxml --enable-shared --with-gd=/usr/local/modules/gd/ --with-jpeg-dir=/usr/local/modules/jpeg6/ --with-png-dir --enable-mbstring=all --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-gd-native-ttf
make
make test
make install
———————————————————
编译完毕。
重启apache服务。
注:在编译的过程中,如果发现错误,什么目录没有,就mkdir建立。之后再编译。
看phpinfo是否支持你想要的模块,若没有再编译即可。
编译完成mysql,之后把这个相应的权限给改了
下面这几句很重要
(这个顺序也很重要,一定不要颠倒)
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chown -R mysql /usr/local/mysql/var/
chown -R mysql /usr/local/mysql/var/.
chown -R mysql /usr/local/mysql/var/mysql
chown -R mysql /usr/local/mysql/var/mysql/
chgrp -R mysql /usr/local/mysql
cp ../support-files/my-medium.cnf /etc/my.cnf
vi /etc/ld.so.conf
/usr/local/mysql/lib/mysql
/usr/local/lib
保存。
载入库:
/sbin/ldconfig -v
cp mysql.server /etc/rc.d/init.d/mysqld
cd /etc/rc.d/init.d/
vi mysqld
找到
$bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
wait_for_pid created $!; return_value=$?
改为:
$bindir/mysqld_safe --user=root --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
wait_for_pid created $!; return_value=$?
之后:
service mysqld start
service mysqld restart 就可以了。
最后是在启动机器的时候也启动服务
我们的机器是在rulevel 3 所以只加level 3就可以了
chkconfig --level 3 mysqld on
这样就不要在rc.local里面加/usr/local/mysql/bin/mysqld-safe --user=mysql & 了
可以这样启动或者重启或者关闭mysql
service mysqld start
service mysqld restart
service mysqld stop
——————————————————————
over
下面这几句很重要
(这个顺序也很重要,一定不要颠倒)
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chown -R mysql /usr/local/mysql/var/
chown -R mysql /usr/local/mysql/var/.
chown -R mysql /usr/local/mysql/var/mysql
chown -R mysql /usr/local/mysql/var/mysql/
chgrp -R mysql /usr/local/mysql
cp ../support-files/my-medium.cnf /etc/my.cnf
vi /etc/ld.so.conf
/usr/local/mysql/lib/mysql
/usr/local/lib
保存。
载入库:
/sbin/ldconfig -v
cp mysql.server /etc/rc.d/init.d/mysqld
cd /etc/rc.d/init.d/
vi mysqld
找到
$bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
wait_for_pid created $!; return_value=$?
改为:
$bindir/mysqld_safe --user=root --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
wait_for_pid created $!; return_value=$?
之后:
service mysqld start
service mysqld restart 就可以了。
最后是在启动机器的时候也启动服务
我们的机器是在rulevel 3 所以只加level 3就可以了
chkconfig --level 3 mysqld on
这样就不要在rc.local里面加/usr/local/mysql/bin/mysqld-safe --user=mysql & 了
可以这样启动或者重启或者关闭mysql
service mysqld start
service mysqld restart
service mysqld stop
——————————————————————
over
1、建用户:
adduser phpq //新建phpq用户
passwd phpq //给phpq用户设置密码
2、建工作组
groupadd test //新建test工作组
3、新建用户同时增加工作组
useradd -g test phpq //新建phpq用户并增加到test工作组
注::-g 所属组 -d 家目录 -s 所用的SHELL
4、给已有的用户增加工作组
usermod -G groupname username
或者:gpasswd -a user group
5、临时关闭:在/etc/shadow文件中属于该用户的行的第二个字段(密码)前面加上*就可以了。想恢复该用户,去掉*即可。
或者使用如下命令关闭用户账号:
passwd peter –l
重新释放:
passwd peter –u
6、永久性删除用户账号
userdel peter
groupdel peter
usermod –G peter peter (强制删除该用户的主目录和主目录下的所有文件和子目录)
7、从组中删除用户
编辑/etc/group 找到GROUP1那一行,删除 A
或者用命令
gpasswd -d A GROUP
8、显示用户信息
id user
cat /etc/passwd
更详细的用户和用户组的解说请参考
Linux 用户和用户组详细解说
本文主要讲述在Linux 系统中用户(user)和用户组(group)管理相应的概念;用户(user)和用户组(group)相关命令的列举;其中也对单用户多任务,多用户多任务也做以解说。
本篇文章来源于 PHP资讯 原文链接:http://www.phpq.net/linux/linux-add-delete-user-group.html
adduser phpq //新建phpq用户
passwd phpq //给phpq用户设置密码
2、建工作组
groupadd test //新建test工作组
3、新建用户同时增加工作组
useradd -g test phpq //新建phpq用户并增加到test工作组
注::-g 所属组 -d 家目录 -s 所用的SHELL
4、给已有的用户增加工作组
usermod -G groupname username
或者:gpasswd -a user group
5、临时关闭:在/etc/shadow文件中属于该用户的行的第二个字段(密码)前面加上*就可以了。想恢复该用户,去掉*即可。
或者使用如下命令关闭用户账号:
passwd peter –l
重新释放:
passwd peter –u
6、永久性删除用户账号
userdel peter
groupdel peter
usermod –G peter peter (强制删除该用户的主目录和主目录下的所有文件和子目录)
7、从组中删除用户
编辑/etc/group 找到GROUP1那一行,删除 A
或者用命令
gpasswd -d A GROUP
8、显示用户信息
id user
cat /etc/passwd
更详细的用户和用户组的解说请参考
Linux 用户和用户组详细解说
本文主要讲述在Linux 系统中用户(user)和用户组(group)管理相应的概念;用户(user)和用户组(group)相关命令的列举;其中也对单用户多任务,多用户多任务也做以解说。
本篇文章来源于 PHP资讯 原文链接:http://www.phpq.net/linux/linux-add-delete-user-group.html
linux userdel 命令详解
功能说明:删除用户帐号。
语 法:userdel [-r][用户帐号]
补充说明:userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件。
参 数:
-r 删除用户登入目录以及目录中所有文件。
功能说明:删除用户帐号。
语 法:userdel [-r][用户帐号]
补充说明:userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件。
参 数:
-r 删除用户登入目录以及目录中所有文件。
好多人在网上问linux怎么重启mysql,回答也是各式各样的。mysql并没有像apache那样可以通过/usr/local/apache/bin/apachetl restart这样来重启。好多提到的都是killall mysqld ,杀掉所有mysql进程,然后重新启动mysql,这样容易造成mysql数据库的损坏,特别是在应用的情况下。mysql其实是可以作为服务来重启的。
方法如下:
源码目录下/support-files/mysql.server 拷贝到/etc/rc.d/init.d/下。然后把启动mysql命令添加到/etc/rc.d/rc.local。这样启动以后,mysql就自动启动了。运行过程中,就可以用server mysql restart来运行。
方法如下:
源码目录下/support-files/mysql.server 拷贝到/etc/rc.d/init.d/下。然后把启动mysql命令添加到/etc/rc.d/rc.local。这样启动以后,mysql就自动启动了。运行过程中,就可以用server mysql restart来运行。
smartd是一个守护进程(一个帮助程序),它能监视拥有自我监视,分析和汇报技术(Self-Monitoring,
Analysis, and Reporting Technology - SMART)的硬盘。
SMART系统使得硬盘能监视并汇报自己的运行状况。它的一个重要特性是能够预测失败,使得系统管理员
能避免数据丢失。
smartd由kernel-utils包缺省安装。用命令 rpm -ql kernel-utils 可以列出kernel-utils包中的文件。
smartd守护进程通常在系统启动的时候被开启,它的配置文件是/etc/smartd.conf。
比如,假设有两个硬盘被安装,/dev/hda和/dev/hdb。一个是CD_ROM设备,另一个是硬盘。为了检测它们
是否支持SMART,使用命令 smartctl -i /dev/hda 和 smartctl -i /dev/hdb:
# /usr/sbin/smartctl -i /dev/hda
smartctl version 5.1-11 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF INFORMATION SECTION ===
Device Model: ST380011A
Serial Number: 3JVB672N
Firmware Version: 8.01
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 6
ATA Standard is: ATA/ATAPI-6 T13 1410D revision 2
Local Time is: Fri Aug 20 14:09:16 2004 EST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
”SMART support is: Available - device has SMART capability.“这行说明支持SMART。"SMART
support is: Enabled”这行说明SMART已经被打开。
CD-ROM设备和旧式的硬盘不支持SMART,这可以从smartctl -i /dev/hdb的输出看出:
# /usr/sbin/smartctl -i /dev/hdb
smartctl version 5.1-11 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF INFORMATION SECTION ===
Device Model: LTN526D
Serial Number: [No Information Found]
Firmware Version: 9S03
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 1
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Fri Aug 20 14:24:43 2004 EST
SMART is only available in ATA Version 3 Revision 3 or greater.
We will try to proceed in spite of this.
SMART support is: Unavailable - device lacks SMART capability.
A mandatory SMART command has failed: exiting. To continue, use the -T
option to set the tolerance level to 'permissive'
注意有些硬盘控制器不支持SMART。比如有些硬件RAID控制器不支持,或者不会传递SMART信息,即使加入
的硬盘支持SMART。
chkconfig --del smartd
在服务里面停掉smartd服务守护进程。这是一个硬盘是否有故障的监视进程,
shell# service smartd start
启动 smartd: [失败]
shell# service smartd status
smartd 已死,但是 subsys 被锁
Analysis, and Reporting Technology - SMART)的硬盘。
SMART系统使得硬盘能监视并汇报自己的运行状况。它的一个重要特性是能够预测失败,使得系统管理员
能避免数据丢失。
smartd由kernel-utils包缺省安装。用命令 rpm -ql kernel-utils 可以列出kernel-utils包中的文件。
smartd守护进程通常在系统启动的时候被开启,它的配置文件是/etc/smartd.conf。
比如,假设有两个硬盘被安装,/dev/hda和/dev/hdb。一个是CD_ROM设备,另一个是硬盘。为了检测它们
是否支持SMART,使用命令 smartctl -i /dev/hda 和 smartctl -i /dev/hdb:
# /usr/sbin/smartctl -i /dev/hda
smartctl version 5.1-11 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF INFORMATION SECTION ===
Device Model: ST380011A
Serial Number: 3JVB672N
Firmware Version: 8.01
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 6
ATA Standard is: ATA/ATAPI-6 T13 1410D revision 2
Local Time is: Fri Aug 20 14:09:16 2004 EST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
”SMART support is: Available - device has SMART capability.“这行说明支持SMART。"SMART
support is: Enabled”这行说明SMART已经被打开。
CD-ROM设备和旧式的硬盘不支持SMART,这可以从smartctl -i /dev/hdb的输出看出:
# /usr/sbin/smartctl -i /dev/hdb
smartctl version 5.1-11 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF INFORMATION SECTION ===
Device Model: LTN526D
Serial Number: [No Information Found]
Firmware Version: 9S03
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 1
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Fri Aug 20 14:24:43 2004 EST
SMART is only available in ATA Version 3 Revision 3 or greater.
We will try to proceed in spite of this.
SMART support is: Unavailable - device lacks SMART capability.
A mandatory SMART command has failed: exiting. To continue, use the -T
option to set the tolerance level to 'permissive'
注意有些硬盘控制器不支持SMART。比如有些硬件RAID控制器不支持,或者不会传递SMART信息,即使加入
的硬盘支持SMART。
chkconfig --del smartd
在服务里面停掉smartd服务守护进程。这是一个硬盘是否有故障的监视进程,
shell# service smartd start
启动 smartd: [失败]
shell# service smartd status
smartd 已死,但是 subsys 被锁
实际上最好别用光盘带的ssh 下载最新版本好像是3.0以上了 网站:www.ssh.com
下载.tar.gz并上传到自己的网站
tar -zxvf ss*.tar.gz
./configure
make
make install
执行/usr/local/sbin/sshd2&
服务器端基本上就可以了,关于验证的方式、端口等的设置请配置/etc/ssh2/ .config 文件
然后下载ssh的window客户端 执行 hoho ok了
下载.tar.gz并上传到自己的网站
tar -zxvf ss*.tar.gz
./configure
make
make install
执行/usr/local/sbin/sshd2&
服务器端基本上就可以了,关于验证的方式、端口等的设置请配置/etc/ssh2/ .config 文件
然后下载ssh的window客户端 执行 hoho ok了