2012年7月9日星期一

gfs安装在RHEL 6.2上 配置

我整了3个虚拟机,Srv1,Srv2,Srv3
一,添加信任存储pool
在Srv1上运行
gluster peer probe Srv2
gluster peer probe Srv3
将Srv2,Srv3添加到Srv1的信任存储pool里,如果出现107错误,检查防火墙配置。 
查看一下添加的内容
gluster peer status
 
二,建立vol
gfs的vol有Distributed, Replicated, Striped,Distributed+Replicated,Distributed+Striped
5种方式。
一定要理解协议一下gfs的概念 
http://www.gluster.org/community/documentation/index.php/GlusterFS_Concepts

由于我只是想用gfs替代nfs,所以做最简单命令了。
在Srv1上执行
gluster volume create Srv1-Vol Srv1.RHEL62:/data/Srv1
gluster volume create Srv2-Vol Srv2.RHEL62:/data/Srv2
gluster volume create Srv3-Vol Srv3.RHEL62:/data/Srv3
建立了3个Distributed vol。
然后在start vol
gluster volume start Srv1-Vol
gluster volume start Srv2-Vol
gluster volume start Srv3-Vol
 
由于gfs没有什么mds的概念,所以也就无所谓老大,大家都一样,所以上面的命令,
其实在哪台机器上执行都一样。
 
三,mount 
start vol了后,就可以开始mount了,由于我的每台机器既是server又是client,
所以fuse肯定已经有了,client也是肯定有了。就不用再次安装native client了。直接mount就好。
在Srv1上,开始mount
mount -t glusterfs -o log-level=WARNING,log-file=/var/log/glusterfs/Srv2.log Srv1.RHEL62:/Srv2-Vol /data/Srv2
mount -t glusterfs -o log-level=WARNING,log-file=/var/log/glusterfs/Srv3.log Srv1.RHEL62:/Srv3-Vol /data/Srv3
注意的是,在Srv1上我用的是 Srv1的vol,用Srv2的vol是不是一样呢,当然是一样
比如,我修改为
mount -t glusterfs -o log-level=WARNING,log-file=/var/log/glusterfs/Srv2.log Srv2.RHEL62:/Srv2-Vol /data/Srv2
就会要求Srv2比Srv1开机早,不方面重启等。所以我感觉最好还是自己用自己的。 这点上,也是我打算用gfs替换nfs的原因之一。nfs如果要mount上,就非得对方先起来。
这样就完事了,同理,在Srv2,Srv3上也mount上。
 
到此,我打算用gfs替换nfs的事情就做完了。接下来是测试效率,以及热切换时gfs的反应。
  
 
 

vxfs的碎片整理

vxfs的文件系统,用了2年多,没整理过。
bash-3.00# df -os /data/image
フリーエクステントサイズ
          1:      78261            2:      86610            4:      77911  
          8:      83777           16:      72701           32:      58230  
         64:      68639          128:      53019          256:      43395  
        512:      30339         1024:      21158         2048:      12914  
       4096:       7167         8192:       3734        16384:       1715  
      32768:        461        65536:        155       131072:        124  
     262144:         89       524288:         51      1048576:         32  
    2097152:         17      4194304:         10      8388608:          3  
   16777216:          1     33554432:          1     67108864:          0  
  134217728:          0    268435456:          0    536870912:          0  
 1073741824:          0   2147483648:          0 

可以看到
<8的blocks,远远超过了总块的5%
<64的bocks,也超过了50%

整理一下
/opt/VRTS/bin/fsadm -d -e /data/image

2012年7月7日星期六

gfs安装在RHEL 6.2上 安装

一。安装
最好还是源码安装,下载http://download.gluster.org/pub/gluster/glusterfs/LATEST/glusterfs-3.3.0.tar.gz
然后解压
./configure
make
make install
一路顺利 
glusterfs --version
按后如果防火墙打开了就配置一下防火墙
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 24007:24011 -j ACCEPT 
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT 
iptables -A INPUT -m state --state NEW -m udp -p udp --dport 111 -j ACCEPT 
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 38465:38485 -j ACCEPT #这一行是用NFS时加
service iptables save
service iptables restart
在6.2里面,虽然iptables这样操作出来的/etc/sysconfig/iptables是正确的,
但是却不能正常打开端口,原因未知。所以最后还是得用system-config-firewall来gui配置 

到此,应该是安装完毕了

2012年7月6日星期五

禁止Voice Control

我把iphone放提包里,home按钮老无意被按着,然后就开了voice control功能,挺吵。

修改/System/Library/CoreServices/SpringBoard.app/目录下N88.plist里面的 voice-control后面的true,修改为false,就可以disable掉voice control功能了。根据iOS版本,文件名不一定是88,可能是94啥的。

2012年7月2日星期一

补装gdm

去了硬件商那测试机器,发现硬件商准备的RHEL 6.2没装x window,要重装的话,FC, iSCSI的挂接又得整半天,于是开始补装xwindow。

方法如下:
yum install gdm
yum groupinstall "X Window System"
yum groupinstall "Desktop"
就可以了。当然,本地别忘了安装指定repo源。装好后就可以gdm进xwindow了。
yum真是个好东西呀。

64位的Redhat Linux安装32的库

虽然中间件和应用都早走了64位,但是系统里偶尔还是会用到三方的程序,并只支持32。怎么在64的机器上装上32的库和编译环境呢,今天为编译32的程序折腾不少时间(我开始是去http://pkgs.org/centos-6-rhel-6/centos-rhel-i386/4/下的,然后rpm -ivh安装不上)
1。预备好x86_64的iso,mount上。
2。在/etc/yum.repos.d目录里建立一个文件local.repo,内容如下
[local]
name=local
baseurl=file:///mnt/dvd/
enabled=1
gpgcheck=0
这是为了yum时找repo源
3。现在可以yum开始安装了。
查找一下
yum --disablerepo=* --enablerepo=local search glibc
然后开始安装.i686的
yum --disablerepo=* --enablerepo=local install glibc.i686
yum --disablerepo=* --enablerepo=local install glibc-devel.i686
yum --disablerepo=* --enablerepo=local install compat-libstdc++-33.i686
yum --disablerepo=* --enablerepo=local install libstdc++.i686
yum --disablerepo=* --enablerepo=local install libstdc++-devel.i686

到此,gcc就可以-m32,编译了32的程序了, compat-libstdc++是需要的,要不旧的程序会报libc.so.5找不到。

2012年7月1日星期日

恢复自制固件

我的带锁老的3gs,没事儿就被我折腾,今天修改一下imessage的地址,就激活不了了,试了几个法子,都不灵。于是重新刷。用以前备份了的5.0.1的signed了的去基带固件。

1.iFaith-v1.4.2.exe,进iReb,根据说明进DFU.(没这步,直接Itune恢复会1604error)
2.再在itune里面shift恢复就可。

iFaith很久没更新了,所以没法自制5.1,5.1.1,看来我的3gs也就停留在了5.0.1了