November 1, 2011
freeBSD挂载光驱
"挂接光驱 mount -t cd9660 /dev/acd0 /cdrom 卸载光驱 umount -f /cdrom 挂接USB mount -t msdos /dev/da0s1 /mnt/usb 卸载USB umount /dev/da0s1"
October 31, 2011
Freebsd解决ARP欺骗问题
"1.不安装软件的方法。 首先要重启,确保你拿到的网关地址是正确的。 步骤如下:\nifconfig\n显示类似如下内容\nbge0: flags=8843 mtu 1500 options=1b inet 192.168.0.5 netmask 0xffffffc0 broadcast 192.168.0.1 ether 00:17:08:2a:13:88 media: Ethernet autoselect (100baseTX ) status: active plip0: flags=108810 mtu 1500 lo0: flags=8049 mtu 16384 inet 127.0.0.1 netmask 0xff000000\n我们把网关的信息存到一个文件里。\necho 192.168.0.1 00:17:08:2a:13:88 \u0026gt; /etc/ipmac\n接着使用crontab -e编辑系统定时排程(计划任务)让它按照设定时间循环执行\n*/5 * * * * /usr/sbin/arp -f /etc/ipmac\n这样就每5分钟更新一次网关MAC地址,保证正确。\n注意:这里 …"
October 30, 2011
一个自动检测服务器网络状态的脚本
"最近服务器总是莫明奇妙的网络不通。我在上一篇文章里写了一个自动检测网卡状态的脚本: http://blog.haohtml.com/archives/11827.但发现服务器仍然出现此问题.但服务器内部运行正常.这里基本可以确认是与外网不通的原因.就写了一个脚本,用来检测网络状态,在不通的情况就重启服务器了.此解决办法相当的变态.最好不要使用.\n1.创建新文件 /data/check_net_status.sh,内容如下\n#!/bin/bash if [ $# -ne 1 ] then echo \u0026#39;ip address not defined!\u0026#39; exit fi ip=$1 log_file=\u0026#34;$(date +%Y%m%d).log\u0026#34; ret=`ping -c 10 $ip | grep ttl | wc -l` if [ $ret -lt 2 ]; then echo \u0026#34;$(date +%H:%M:%S) ===== reboot\u0026#34; \u0026gt;\u0026gt; $log_file shutdown -r now fi 添加执行权限\nchmod …"
October 27, 2011
php客户端memcached的安装教程
"我们在上篇文章里()介绍了LNMP的安装方法.只安装了memcache客户端.有些用户可能需要memcached这种客户端的.这里介绍一种php客户端memcached的安装方法.\n之前在安装memcache时有提到memcached客户端是叫memcache,其实还有一个基于libmemcached的客户端叫memcached,据说性能更好,功能也更多。参考:\nmemcache的官方主页: http://pecl.php.net/package/memcache memcached的官方主页: http://pecl.php.net/package/memcached\n以下是我安装Memcached版本的PHP模块的过程记录:\n#wget http://download.tangent.org/libmemcached-0.9.tar.gz #tar zxf libmemcached-0.9.tar.gz #cd libmemcached-0.9 #./configure --prefix=/usr/local/libmemcached --with-memcached #make …"
October 26, 2011
MySQL 数据库性能优化之缓存参数优化[转载]
"在平时被问及最多的问题就是关于 MySQL 数据库性能优化方面的问题,所以最近打算写一个MySQL数据库性能优化方面的系列文章,希望对初中级 MySQL DBA 以及其他对 MySQL 性能优化感兴趣的朋友们有所帮助。\n这是本系列的第一篇文章:MySQL 数据库性能优化之缓存参数优化\n数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级。所以,要优化数据库,首先第一步需要优化的就是 IO,尽可能将磁盘IO转化为内存IO。本文先从 MySQL 数据库IO相关参数(缓存参数)的角度来看看可以通过哪些参数进行IO优化:\nquery_cache_size/query_cache_type (global) Query cache 作用于整个 MySQL Instance,主要用来缓存 MySQL 中的 ResultSet,也就是一条SQL语句执行的结果集,所以仅仅只能针对select语句。当我们打开了 Query Cache 功能,MySQL在接受到一 …"
October 22, 2011
FreeBSD下自动检查网卡状态并自动启用网卡
"#/bin/bash log_file=`date +%Y%m%d` log_file=$log_file\u0026#34;.log\u0026#34; check_date=`date +%H:%M:%S` #status=`ifconfig bge0 | grep status | awk \u0026#39;{print $2}\u0026#39;` status=`ifconfig bge0 | awk \u0026#39;/status/{print $2}\u0026#39;` if [ $status != \u0026#39;active\u0026#39; ]; then status=\u0026#39;down\u0026#39; ifconfig bge0 up else echo \u0026#39;ok\u0026#39; fi check_date=${check_date}\u0026#34; =========== \u0026#34;${status} echo $check_date \u0026gt;\u0026gt; $log_file 另一处写法,其实一样的:\n#!/bin/bash log_file=\u0026#34;$(date +%Y%m%d).log\u0026#34; status=$(ifconfig …"
October 20, 2011
dd 命令用来测试硬盘读写速度(转)
"dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。\n1. 命令简介\ndd 的主要选项: 指定数字的地方若以下列字符结尾乘以相应的数字: b=512, c=1, k=1024, w=2, xm=number m\nif=file 输入文件名,缺省为标准输入。\nof=file 输出文件名,缺省为标准输出。\nibs=bytes 一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。\nobs=bytes 一次写 bytes 个字节(即一个块大小为 bytes 个字节)。\nbs=bytes 同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。\ncbs=bytes 一次转换 bytes 个字节,即转换缓冲区大小。\nskip=blocks 从输入文件开头跳过 blocks 个块后再开始复制。\nseek=blocks 从输出文件开头跳过 blocks 个块后再开始复制。(通常只有当输出文件是磁盘或磁带时才有效)。\ncount=blocks 仅拷贝 blocks 个块,块大小等于 ibs 指定的字节数。 …"
October 20, 2011
FreeBSD/Linux检测硬盘坏道
"Linux检测硬盘坏道\nbadblocks\n功能说明:检查磁盘装置中损坏的区块。\n语法:badblocks [-svw][-b ][-o ][磁盘装置][磁盘区块数][启始区块]\n补充说明:执行指令时须指定所要检查的磁盘装置,及此装置的磁盘区块数。\n参数:\n-b 指定磁盘的区块大小,单位为字节。\n-o 将检查的结果写入指定的输出文件。\n-s 在检查时显示进度。\n-v 执行时显示详细的信息。\n-w 在检查时,执行写入测试。\n[磁盘装置] 指定要检查的磁盘装置。\n[磁盘区块数] 指定磁盘装置的区块总数。\n[启始区块] 指定要从哪个区块开始检查。\nbadblocks 检测磁盘坏块\n1)$badblocks -s //显示进度 -v //显示执行详细情况 /dev/sda1\n2)读写方式检测 未挂载的磁盘设备或分区\n$badblocks -s //显示进度 -w //以写去检测 -v //显示执行详细情况 /dev/sda2\n=========================FreeBSD检测硬盘坏道\n利用硬盘的S.M.A.R.T.功能来做。\ncd …"
October 20, 2011
FreeBSD下的fsck命令
"对文件系统进行检查,并对损害的文件系统进行修复。 fsck的语法如下: fsck (-F fstype) (-v) (-m) (-special…) fsck (-F fstype) (-v) (-y|Y|n|N) (-o fstype options) (special…) 其中: -F fstype : 说明被检查的文件系统的类型 -v : 返回完成的命令行,但不运行 -y|Y: 对所有问题均回答Yes -n|N: 对所有问题均回答No -m: 对文件系统进行检查,不修复文件系统, 如果文件系统经检查后是可安装的,则显示 ufs fsck : sanity check : /dev/rdsk/c0t0d0s0 okay. -o: 文件系统类型选项,选项由逗号分隔,\n**最常用的选项有两个: ** P: 整理(preen)模式 F: 强制检查模式,此选项忽略文件系统状态标志。\n移去一个没有相关文件的目录入口 答Yes或Y来删除该目录入口 重连接一个已分配但不能访问的文件 对fsck的”RECONNECT?”回答Yes,即把该I节点连接到lost+found目录下,文件名即是I节点号 …"
October 19, 2011
遍历memcache中的key和value
"什么是 memcache\nmemcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。\n为什么要遍历\n目前,用到memcache的公司和网站也越来越多。Memcache的客户端操作一般都只提供了get,set等简单的操作,这些操作都是非常高效的。 虽然memcache是个key-value存储的系统,但是在某些时候,我们可能需要遍历memcache的数据。\n通过使用memcache 内置方法Memcache::getExtendedStats,首先获得items信息。\n最后得到的解决类似与\n\u0026lt;php $memcache = new Memcache(); $all_items = …"