1、solaris中不支持$()
错误:
OS=$(cat /etc/release |grep Solaris |awk '{print $1,$2,$3}')
正确:支持``
OS=`cat /etc/release |grep Solaris |awk '{print $1,$2,$3}'`
2、赋值时=两边不能有空格
错误:
OS = `cat /etc/release |grep Solaris |awk '{print $1,$2,$3}'`
正确:
OS=`cat /etc/release |grep Solaris |awk '{print $1,$2,$3}'`
3、if后的条件中括号[]前后必须要有空格
错误:
if[-z $FS]; then
正确:
if [ -z $FS ] ; then
4、比较字符串
错误:
if [ $FS='' ] ; then
#或
if [ $FS -eq '' ] ; then
#或
#'这里的-z是判断FS长度是否为0'
if [ -z $FS ] ; then
正确: 一定要加双引号""
if [ "$FS" = '' ] ; then
#或
#'这里的-z是判断FS长度是否为0'
if [ -z "$FS" ] ; then
5、保留格式输出到文件
错误:
echo `df -h` >> $out_file
正确:
#需要先将有格式的内容用变量接下,再输出
result=`df -h`
echo "$result" >> $out_file
6、export变量
错误:
export JAVA_HOME=/EEIP/install/jdk1.6.0_13
export JRE_HOME=/EEIP/install/jdk1.6.0_13/jre
正确:需要换行
linux默认shell是bash,/bin/sh仅是一个指向到/bin/bash的符号链接,
而solaris的默认shell是Bourne shell,名为/bin/sh
JAVA_HOME=/EEIP/install/jdk1.6.0_13
export JAVA_HOME
JRE_HOME=/EEIP/install/jdk1.6.0_13/jre
export JRE_HOME
补充:
查看开放端口
Linux: netstat -atn
Solaris: netstat -P tcp -f inet -an
查看网卡/网络状态
Linux: ifconfig
Solaris: ifconfig -a 或者 dladm show-dev 等
注:Linux 下每个网卡都是以 eth0,eth1 等来命名的,而 Solaris 则是以网卡驱动来命名的,如 rtls0, iprb0,
bge0, bge1,bnx0,e1000g1,nge1,xge0 等,可以通过man 来查看究竟是什么网卡,比如:man iprb
查看系统安装的所有软件包
Linux: rpm -qa 或者 dpkg-query -l
Solaris: pkginfo
安装软件包
Linux: rpm -ivh stardict.rpm
Solaris: pkgadd -d `pwd` SUNWstardict
卸载软件包
Linux: rpm -e stardict
Solaris: pkgrm SUNWstardict
查看软件包的所有安装文件
Linux: rpm -ql stardict
Solaris: pkgchk -l SUNWstardict | grep Pathname
根据某一个文件来判断该文件属于哪一个安装包
pkgchk -lp /usr/share/stardict/sounds/menushow.wav
rpm -qf /bin/ls
查看进程状态
Linux: top
Solaris: prstat
在 Solaris 下可以通过pkg-get -i top 来下载安装 top软件,prstat -L 可以进一步显示每个线程的状态
查看系统服务
Linux: chkconfig --list
Solaris: svcs
系统服务管理
Linux: chkconfig samba off 或者 chkconfig samba on
Solaris: svcadm ensable svc:/network/smtp:sendmail 或者svcadm enable svc:/network/smtp:sendmail
Solaris 的 svcadm 可以通过-r 参数进一步把相关的服务开启或者禁止掉
查看 CPU信息
Linux: more /proc/cpuinfo
Solaris: psrinfo -v 或者psrinfo -vp
查看内存大小
Linux: more /proc/meminfo 或者top
Solaris: prtconf | grep ^M
监测网络
Linux: tcpdump
Solaris: snoop
显示所有模块信息
Linux: lsmod
Solaris: modinfo
注:Linux 也支持modinfo,但是只显示某个模块信息,如 # modinfo fat
插入模块
Linux: insmod/modprobe
Solaris: modload
卸载模块
Linux: rmmod
Solaris: modload
注:Solaris 每个模块都有一个整数编号,要卸载需指定编号 modinfo | grep bge 174 ffffffffeff63000 12150 162 1 bge (BCM579x driver v0.51) modunload -i 174
查看 pci设备
Linux: lspci -vn
Solaris: prtconf -vp
给网卡添加额外的 IP 地址
Linux: ifconfig eth0:1 192.168.3.15
Solaris: ifconfig e1000g addif 192.168.3.15/24 up