以下内容来自于CU,solaris区帖子的整理
IPMP设置示例
1) ok setenv local-mac-address? true
2) 使用vi编辑器修改hosts文件,在/etc/hosts文件中,增加双机中另一节点的机器名和IP地址,以方便双机之间的访问。
在scha1的hosts文件中增加行:
#vi /etc/hosts
127.0.0.1 localhost
156.36.16.37 scha1 loghost
156.36.16.38 ce0test
156.36.16.39 ce2data
156.36.16.40 ce2test
156.36.16.41 scha2
156.36.16.45 ha-ora-lh
在scha2的hosts文件中增加行:
#vi /etc/hosts
127.0.0.1 localhost
156.36.16.41 scha2 loghost
156.36.16.42 ce0test
156.36.16.43 ce2data
156.36.16.44 ce2test
156.36.16.37 scha1
156.36.16.45 ha-ora-lh
3). 配置主备双机的IP多路径
对外公布的IP地址为:156.36.16.45
双机中每台主机有4块网卡ce0、ce1、ce2、ce3,规定ce0、ce2作数据网卡,互为主备用。两个网卡的逻辑组名要求一致,这里组名是abc。
当ce0链路出现问题时,ce1自动生成一个ce1:1的逻辑网卡,其IP地址为ce0的IP地址,当ce0恢复正常后,ce1:1 自动撤消,ce0仍然使用原来的IP地址。同理,当ce1链路出现问题时,ce0:1接替ce1工作,保证了网络使用的可靠性。(注意,该处的所有的IP地址要求处于同一网段,)
在主机scha1上使用vi编辑器编辑/etc/hostname.ce0和/etc/hostname.ce1两个文件,具体操作如下:
#vi /etc/hostname.ce0
scha1 group abc up \
addif ce0test -failover deprecated up
#vi /etc/hostname.ce2
ce2data group abc up \
addif ce2test -failover deprecated up
在主机scha2上使用vi编辑器编辑/etc/hostname.ce0和/etc/hostname.ce1两个文件,具体操作如下:
#vi /etc/hostname.ce0
scha2 group abc up \
addif ce0test -failover deprecated up
#vi /etc/hostname.ce2
ce2data group abc up \
addif ce2test -failover deprecated up
4) 在双机上使用vi编辑器修改/kernel/drv/scsi_vhci.conf文件,具体操作步骤如下:
#vi /kernel/drv/scsi_vhci.conf
将以下行:
mpxio-disable="yes"
修改为:
mpxio-disable="no"
5.修改/etc/system,添加ce网卡bug修正参数:
set ce:ce_reclaim_pending=1
set ce:ce_taskq_disable=1
测试办法:
IPMP从Solaris 8
(01/01)开始就已经成为Solaris的标准配置了,所以大家都可以用,对于这些新的feature,大家不要客气啊,不用白不用啊!
下面就用配置文件的方式来配置IPMP,假设如下:
multipathing test IP 10.170.1.81 测试地址1
multipathing test IP 10.170.1.82 测试地址1
Logical IP 10.170.1.80 逻辑地址,这是我们访问的地址
Group Name mswitch 这个名字,随便取的
Network Card ce0,ce1
1、首先更改hosts文件
#vi /etc/hosts
10.170.1.80 host1 loghost
10.170.1.81 host1-1
10.170.1.82 host1-2
2、然后创建文件hostname.ce0 , hostname.ce1
#vi /etc/hostname.ce0
host1 group mswitch up
addif host1-1 -failover deprecated up
#vi /etc/hostname.ce1
host1-2 group mswitch -failover deprecated up
3、重新启动计算机,就可以了
#reboot
4、after reboot , you can use ifconfig -a to view the configure
information.
#ifconfig -a
做做测试,看看会不会failover!
ORACLE FOR SUN SOLARIS 安装手册
ORACLE 是大型关系型数据库,是高可靠的、耐用的、安全的、可扩充的数据库。
在分布方式、平行方式、多线索方式下都有良好的表现,特别适用于象CHINA ON
LINE 这样的大型的遍布全国的数据存储方式;加上它有许多优秀的前台开发工具
如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端P
C 平台的应用程序,特别适用于象CHINA ONLINE 这样的需要编写适用于各行各业
大量的应用工作的任务,计费系统就是一个例子。
ORACLE 的安装分三个大步骤,首先是安装 C COMPILER,接着是 ORACLE 安装前
的准备工作,最后才是进ORACLE 安装窗口进行安装及安装后处理。
一、安装 C COMPILER ( 编译器 )
ORACLE WEB SERVER的安装过程有些步骤需要用C语言编译器编译执行,加上ORAC
LE 的底层逻辑计算有c 编译器则更高速、更可靠。所以此步不可少。
1、 Solaris安装后
#cp /etc/skel/local.cshrc /.cshrc
#cp /etc/skel/local.login /.login
2、 #vi /etc/passwd
第一行改成 root:0:1:Super-User:/:/bin/csh
3、 #vi /.cshrc
unmask 022
set path=(/bin /usr/openwin/bin /oracle/bin /usr/sbin /opt/SUNWspro/bi
n
/sbin /usr/ucb /etc /usr/ccs/bin .)
alias cd 'cd \!*;set prompt=" ' pwd '#>" '
( 安装CC要修改系统时间,改到 LICENCES日期之前 )
4、 插入C COMPILER 安装光盘
#volcheck
#df -k 检查有无cdrom的设备
5、 #cd /cdrom/cdrom0
(说明:C 编译器的安装程序必须在openwin 即窗口状态下执行)
#/cdrom/unamed_cdrom0>spro_install_tool
6、 选 sparc compiler 3.0.1
7、 选 install licenses software /opt
8、 选 setup licenses
9、 选 select product sparc compiler 3.0.1
10、 选 demo licenses
11、 输入有效期:DD-MM-YY
密 码:
12、 选 done with licenses,然后退出 exit install licenses 。
屏幕有窗口提示licenses安装成功
13、选 install,屏幕出现滚动安装窗口
等待数分钟后,屏幕提示安装成功,exit install
14、 在操作系统下运行
#etc/opt/licenses/LIC_CONFIG_SCRIPT
屏幕提示licenses 已正确设置。
15、 #reboot
正常登录后
#env 看环境变量改变了没有
16、 #vi test.c 编一 C语言测试程序
#include /* test.c */
main()
{
printf("Hello......\n";
}
17、 #cc test.c -o test 编译
18、 #./test 执行
运行结果:
Hello.......
19、 #eject cdrom 成功后退出光盘
C COMPILER 安装成功!
二、安装 ORACLE 前的准备工作
准备工作主要是增加ORACLE 的用户及组,改变一些系统参数文件。
1、 #vi /etc/passwd
第一行改成 root:0:1:Super-User:/:/bin/csh
(选用csh 内核语言)
最后一行加 oracle::9722:643:super-account:/oracle:/bin/csh
(增加oracle用户)
2、 #vi /etc/group (增加oracle的组)
最后一行后加 dba::643racle
3、 (必要时改 shadow 文件的读写属性:chmod 755 shadow )
#vi /etc/shadow (增加oracle用户口令,这里缺省)
最后一行后加 oracle:::::::: (共8个
4、 在根 / 下
#chown oracle oracle
#chgrp dba oracle
#passwd oracle 给oracle加口令,敲两次口令
5、 #cp .cshrc /oracle 把根下的这两个文件拷贝到 /oracle 路径下
#cp .login /oracle
6、 #cd oracle
#chown oracle .* 把拷贝过来的隐含文件变成oracle属组
#chgrp dba .*
7、 #vi /etc/services
最后增加两行 orasrv 1525/tcp oracle
listener 1521/tcp
8、 #vi /etc/system
在set后增加一段 set shmsys:shminfo_shmmax=8388608
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
set semsys:seminfo_semmns=200
set semsys:seminfo_semmni=70
9、 #su - oracle
10、 %vi .cshrc
增加一段 setenv ORACLE_HOME /oracle
setenv ORACLE_DOC /oracle/odoc
setenv ORACLE_SID oracle7
setenv ORACLE_TERM sun5
setenv ORA_NLS /oracle/occommon/nls/admin/data
setenv NLS_LANG=AMERICAN.AMERICA.zhs16cgb231280
alias cd 'cd \!*;set prompt=" 'pwd '%>" '
11、 %cd oracle
%mkdir odoc 建odoc路径
%chmod 755 odoc
三、安装 ORACLE
1 、插入ORACLE 安装光盘
%volcheck
%df -k 检查有无cdrom的设备
2、 %cd /cdrom/oracle/orainst
%./orainst 出现 ORACLE 黑框的安装窗口
3、 选第一项 COMPLETE SOFTWARE / DATABASE FRESH INSTALL
然后一路回车 选九个产品安装 (全部安装可能无足够硬盘空间)
①. oracle7 advanced replication option 7.2.2.3.0 (可选)
②. oracle7 distributed database option 7.2.2.3.0 (可选)
③. oracle7 parallel query option 7.2.2.3.0 (可选)
④. oracle server (RDBMS) 7.2.2.3.0
⑤. PL/SQL 2.2.2.3.0
⑥. SQL*NET V2.2.2.2.0.0
⑦. PROC*C 2.1.2.0.0 (可选)
⑧. SQL/PLUS
⑨. TCP/IP protocal Adapter (V2) 2.2.2.2.0.0
注意:create db object 应选择yes
4、 再一路回车,根据提示输入 system 、 sys、 TNS listener 的password
5、 LANGUAGE 时 选OTHERS ,用户输入ZHS16CGB231280 汉字国标字符集
(说明:安装25%以前出错,可能是C COMPILER 的路径 /opt/SUNWspro/未在orac
le下的.cshrc下定义。)
6、安装成功100%后又回到开始的选项菜单。有时未满100% 后也回到开始的选项
菜单, /oracle/orainst/install.log 安装日志文件最后提示OK
7、按 F7 到菜单项,FILE 中选 EXIT 退出
% /cdrom/cdrom0/orainst>exit 退出 oracle 用户
8、运行 #/oracle/orainst/root.sh
Are these setting correct (y/n):敲 y
Enter the full pathname of the local bin directory (y/n): 敲/bin
(此shell 程序在/var/opt/oracle路径下生成一个文件oratab ,并做系统检测)
9、 #vi /var/opt/oracle/oratab
最后一行改 oracle7:/oracle:Y
10、#vi /var/opt/oracle/listener.ora
改 host= (host_name)
oraclehome= (/oracle)
11、#vi /var/opt/oracle/tnsnames.ora
一些连接字符串,分布式通讯时有用
12、#reboot 重新启动机器,使参数生效
风之幻想 回复于:2007-01-12 12:38:26
13、#su - oracle
%env 看环境变量改变了没有
14、%svrmgrl 唤醒SVRMGR状态
SVRMGR>connect internal 连接打开数据库
SVRMGR>shutdown abort 先关闭 instances, 数据库
SVRMGR>startup 再打开数据库,当看到
instances startup, database mount,
database open的时候,oracle安装成功
SVRMGR>exit
15、 %lsnrctl start 启动listener
如果出错检查环境变量是否设好,及lsnrctl文件的内容和执行属性。
snoop抓包工具详细解说
snoop 抓包
solaris自带snoop抓包工具,抓所有数据流
# snoop
Using device /dev/pcn0 (promiscuous mode)
192.168.8.18 -> 192.168.255.255 NBT NS Query Request for WORKGROUP[1c], Success
192.168.253.35 -> solaris TELNET C port=1246
solaris -> 192.168.253.35 TELNET R port=1246 Using device /dev/pc
solaris -> 192.168.253.35 TELNET R port=1246 Using device /dev/pc
192.168.4.150 -> (broadcast) ARP C Who is 192.168.4.200, 192.168.4.200 ?
192.168.4.200 -> (broadcast) ARP C Who is 192.168.4.150, 192.168.4.150 ?
#
抓源地址或目的为 202.101.98.55的数据流:
# snoop 202.101.98.55
Using device /dev/pcn0 (promiscuous mode)
192.168.253.35 -> dns.fz.fj.cn DNS C www.163.com. Internet Addr ?
dns.fz.fj.cn -> 192.168.253.35 DNS R www.163.com. Internet CNAME www.cache.split.netease.com.
#
说明:internet cname 后的为解析www.163.com的名字时,代表www.163.com回答的主机的域名。
抓 192.168.253.35和202.101.98.55之间的数据流(双向都抓)
# snoop 192.168.253.35 202.101.98.55
Using device /dev/pcn0 (promiscuous mode)
192.168.253.35 -> dns.fz.fj.cn DNS C www.google.com. Internet Addr ?
dns.fz.fj.cn -> 192.168.253.35 DNS R www.google.com. Internet CNAME www.l.google.com.
#
抓完存在当前目录下的cap文件中并查看
# snoop -o cap1 -P -P表示处在非混杂模式抓数据,只抓广播、主播、目的为本机的数据
Using device /dev/pcn0 (non promiscuous)
15 ^C 15的含义是:显示目前抓了多少个数据流
#
# snoop -i cap1
1 0.00000 192.168.253.35 -> solaris TELNET C port=1246
2 0.18198 192.168.253.35 -> solaris TELNET C port=1246
3 0.37232 192.168.4.199 -> 192.168.255.255 NBT Datagram Service Type=17 Source=WB-200[20]
4 0.00016 ? -> (multicast) ETHER Type=EF08 (Unknown), size = 180bytes
5 0.62546 192.168.253.35 -> solaris TELNET C port=1246
6 0.13822 ? -> (multicast) ETHER Type=0000 (LLC/802.3), size = 52 bytes
7 0.06283 192.168.253.35 -> solaris TELNET C port=1246
8 0.90301 192.168.253.35 -> solaris TELNET C port=1246
9 0.19781 192.168.253.35 -> solaris TELNET C port=1246
10 0.81493 ? -> (multicast) ETHER Type=0000 (LLC/802.3), size = 52 bytes
11 0.07018 192.168.253.35 -> solaris TELNET C port=1246
12 0.19939 192.168.253.35 -> solaris TELNET C port=1246
13 0.90151 192.168.253.35 -> solaris TELNET C port=1246
14 0.18904 192.168.253.35 -> solaris TELNET C port=1246
15 0.68422 ? -> (multicast) ETHER Type=0000 (LLC/802.3), size = 52 bytes
#snoop -i cap1 -p 10,12 只看10-12条记录
#snoop -i cap1 -p10 只看第10条记录
# snoop -i cap1 -v -p101 查看第10条数据流的包头的详细内容
#snoop -i cap1 -v -x 0 -p101 查看第10条数据流的全部的详细内容
抓主机192.168.253.35和202.101.98.55之间的tcp或者udp端口53的数据
# snoop 192.168.253.35 and 202.101.98.55 and \(tcp or udp\) and port 53
输入(的时候要加转义符号\
snoop的详细参数
Snoop 是Solaris 系统中自带的工具, 是一个用于显示网络通讯的程序, 它可捕获IP 包并将其显示或保存到指定文件. (限超级用户使用snoop)
Snoop 可将捕获的包以一行的形式加以总结或用多行加以详细的描述(有调用不同的参数–v -V来实现). 在总结方式下(-V ) , 将仅显示最高层的相关协议, 例如一个NFS 包将仅显示NFS 信息, 其低层的RPC, UDP, IP, Ethernet 帧信息将不会显示, 但是当加上相应的参数(-v ), 这些信息都能被显示出来.
-C
-D
-N
-P 在非混杂模式下抓包
-S 抓包的时候显示数据包的大小
-V 半详细的显示抓的数据的信息
-t [ r | a | d ] 显示时间戳,-ta显示当前系统时间,精确到毫秒
-v 最详细的显示数据的信息
-x offset [ , length] 以16进制或ACSII方式显示某数据的部分内容,比如 -x 0,10 只显示0-10字节
#snoop -i cap1 -v -x 0 -p101 查看被抓获的第101个数据流的全部内容
表达式:
根据地址:
#snoop x.x.x.x IPV4的IP
#snoop 0XX:XX:XX:XX ETHERNET的MAC地址
数据的方向:
from x.x.x.x 或者 src x.x.x.x
to x.x.x.x 或者 dst x.x.x.x
可用的数据类型的关键词:
ip, ip6, arp, rarp, pppoed, pppoes,pppoe,broadcast,multicast,apple,decnet
udp, tcp, icmp, icmp6, ah, esp
greater length
True if the packet is longer than length.
less length
True if the packet is shorter than length.
net net
# snoop from net 192.168.1.0 抓来自192.168.1.0/24的数据
# snoop from net 192.168.0.0 抓来自192.168.0.0/16的数据
port xx XX为TCP或者UDP的端口号或者 /etc/services里定义的名字
#snoop to udp and port 53 抓到UDP53的数据
有错误之处请多多指教
estar 回复于:2007-01-12 12:58:19
收藏,谢谢
要努力学习 回复于:2007-01-12 15:23:30
大哥```````我的眼睛`````!!!:em16:
|