现在的位置: 首页 > 综合 > 正文

Check system info on Solaris

2014年04月10日 ⁄ 综合 ⁄ 共 5152字 ⁄ 字号 评论关闭

1、如何查看cpu的状态?  
# psrinfo -v
# mpstat 可以列出多cpu负载的状态

2、如何查看内存?  
# prtconf -vp | grep 'Memory' 可以查看内存的多少.
# /usr/platform/sun4u/sbin/prtdiag

prtdiag -v

Solaris 9开始,可以使用mdb来查看内存:
   # echo ::memstat | mdb -k

3、如何查看swap分区大小?

#swap -l

#swap -s

4、如何查看当前网卡是以何种速率起来的?  
# dmesg |grep Link

5、如何查看硬盘的使用情况?  
# df -k    可以看到已安装的文件系统的空间大小及剩余空间大小。
# quota -v  查看用户的磁盘空间信息,如果你用quota限制了用户空间大小的话。
# du -sk *    查看目录的使用情况
# du -k | sort -n 可以迅速发现那个目录是最大的。

6、如何查看硬盘物理信息?
# format 这个命令也可以查看硬盘的类型和分区的详细情况
# iostat -E  看硬盘的大小和型号
# prtvtoc /dev/rdsk/c0t0d0s0 显示某个磁盘的分区状况

7、查看系统内核命令。  
# isainfo 看内核的bit,
# isainfo -kv 调整内核
# modinfo 显示可载入的模组
# prtconf 显示系统硬件配置(周边设备)
#sysdef 显示可载入的模组,硬件配置与一些可以调整的核心参考值
#ulimit -a

8、查看及启动系统的32位或64位内核模式
64位模式
# isalist –v
sparcv9+vis sparcv9 sparcv8plus+vis sparcv8plus sparcv8 sparcv8-fsmuld sparcv7 sparc

# isainfo –v
64-bit sparcv9 applications
32-bit sparc applications
# isainfo –b
64
启动64位内核模式
ok. boot kernel/sparcv9/unix

32位模式
# isalist –v
sparcv8plus+vis sparcv8plus sparcv8 sparcv8-fsmuld sparcv7 sparc
# isainfo –v
32-bit sparc applications
# isainfo –b
32
启动32位模式
ok. boot kernel/unix

9、测定当前的显示器刷新频率
# /usr/sbin/fbconfig –rev \?

10、如何配置网卡ip?
# ifconfig -a --查看网卡,例如是hme0
# ifconfig hme0 unplumb --停止网卡
# ifconfig hme0 plumb --起用网卡
# ifconfig hme0 inet 192.168.2.3 netmask 255.255.255.0 up --添加ip、子网掩码
# vi /etc/defaultrouter 添加默认路由的ip
# vi /etc/hostname.hme0 添加主机名
# vi /etc/nodename 添加主机名
# vi /etc/resolv.conf
domain china.com 你的域名
nameserver 202.106.0.20 你使用的nds ip
# vi /etc/nsswitch.conf 更改 hosts:file dns

11、 PROM状态命令与参数
格式: OK> 指令
命令 说明
banner 显示当前机器配置状况,CPU,内存,hostid,EtherNet
probe-scsi 显示内部SCSI通道所挂接设备
probe-scsi-all 显示所有SCSI通道及所挂接设备
probe-ide 显示所有IDE通道及所挂接设备(针对U10,U5)
devalias 显示设备别名,如 cdrom,disk,disk0,disk1等
printenv 无参数,显示环境变量或
参数为环境变量名 如: printenv auto-boot?
setenv 设置环境变量,如: setenv auto-boot? false
set-default 恢复环境变量预定值 如:set-default auto-boot?
set-defaults 恢复所有环境变量预定值
boot device option 启动主机
设备别名: cdrom 或 disk
设备名: /pci@1f,4000/scsi@3,1/disk@6,0:f
option -r 设备配置
-s 单用户
eject cdrom|floppy 弹出cdrom或floppy
reset 复位
test net
watch-net-all
show-devs

12、查找网卡名称及接口个数
# grep network /etc/path_to_inst

13、如何一块网卡绑定三个ip,并且子网掩码不同?
举例说明,网卡名hme0:
# vi /etc/hosts
127.0.0.1 localhost
192.168.2.1 dbs loghost
192.168.9.15 dd
192.168.9.65 aa
# vi /etc/netmasks
192.168.2.0 255.255.255.0
192.168.9.0 255.255.255.192
192.168.9.64 255.255.255.252

#vi /etc/hostname.hme0
dbs
#vi /etc/hostname.hme0:1
dd
#vi /etc/hostname.hme0:2
aa
# ipconfig hme0 inet 192.168.2..1 netmask 255.255.255.0 up
# ipconfig hme0:1inet 192.168.9.15 netmask 255.255.255.192 up
# ipconfig hme0 inet 192.168.9.65 netmask 255.255.255.252 up
# init 6
#ipconfig -a

14、查看硬盘参数及其物理地址:
#format </dev/null

15、显示磁盘的分区情况:
#prtvtoc /dev/rdsk/c0t0d0s2

16、查看端口是否被占用:
netstat -anp | grep 8080
如果已经listening就是被占用了

17、查看端口占用情况:
netstat -an
netstat -an |awk '{print $1}' |grep ^*.[0-9]
在/etc/serivces中看。

18、查看系统运行级别
# who -r 看运行级别

19、进程工具
pstop  pid  停止进程
prun pid  重新启动进程
ptime  pid  使用微状态计算进程时间
pwait   pid  等待指定的进程终止
pcred  pid 显示可信度    *
pfiles  pid     显示已打开文件的fstat和fcntl信息   *
pflags pid    显示每个lwp的/proc跟踪标志,等待和待有信号量以及其他状态信息  *
pldd pid     显示链接到每个进程的动态链接库   *
pmap  pid 显示地址映射空间   *
psig  pid    显示信号操作    *
pstack pid   显示每个lwp的十六进制与符号堆跟踪   *
ptree pid   显示包含指定PID的进程树
pwdx pid   显示当前工作目录   *
后面加*的必须是超级用户执行。
这些工具在/usr/proc/bin/里面。

20、显示已经使用和未使用的i-node数目
# df –F ufs –o i

21、显示cpu使用率最高的进程
# ps –eo pid,pcpu,args | sort +1n
该命令输出当前系统进程的pid, CPU占用率及命令描述,并以pcpu来排序

22、查看当前的OpenWindows版本
# showrev –w
OpenWindows version:
X11 Version 6.4.1 5 November 2001

23、如何查看系统的版本?
$ uname -X

$ more /etc/release

24、如何查看系统I/O占用情况?

iostat命令格式是:iostat -dx 1,意思是每隔一秒显示一次IO扩展信息。

shell> iostat -dx 1
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s
sda 0.18 37.71 0.65 2.63 50.18 322.08
avgrq-sz avgqu-sz await svctm %util
113.46 0.35 107.49 1.67 0.55
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s
sda 0.00 4208.00 0.00 165.00 0.00 163872.00
avgrq-sz avgqu-sz await svctm %util
993.16 119.54 1144.36 6.07 100.10

注:开头显示的是自系统启动开始的平均值,后面显示的是每段时间间隔里的平均值。

如果你的操作系统里没有iostat命令的话,除了从源代码安装,还可以使用下面方式:

    Centos/Fedora的安装方式是:yum install sysstat
    Debian/Ubuntu的安装方式是:aptitude install sysstat

介绍一下相关参数的含义:

    rrqm/s:队列中每秒钟合并的读请求数量
    wrqm/s:队列中每秒钟合并的写请求数量
    r/s:每秒钟完成的读请求数量
    w/s:每秒钟完成的写请求数量
    rsec/s:每秒钟读取的扇区数量
    wsec/s:每秒钟写入的扇区数量
    avgrq-sz:平均请求数据的大小
    avgqu-sz:平均请求队列的长度
    await:平均每次请求的等待时间
    svctm:平均每次请求的服务时间
    util:设备的利用率

注:建议对照源代码来记忆这些参数都是如何计算出来的。

关于这些参数,相对重要的是后面几个,具体来说是:util,svctm,await,avgqu-sz:

util是设备的利用率。如果它接近100%,通常说明设备能力趋于饱和(并不绝对,比如设备有写缓存)。有时候可能会出现大于100%的情况,这多半是计算时四舍五入引起的,但如果是磁盘阵列等多盘系统,因为具有并发IO操作的能力,也会出现大于100%的情况。

svctm是平均每次请求的服务时间。从源代码里可以看出:(r/s+w/s)*(svctm/1000)=util。举例子:如果util达到100%,那么此时svctm=1000/(r/s+w/s),假设IOPS是1000,那么svctm大概在1毫秒左右,如果长时间大于这个数值,说明系统出了问题。不过前面已经说过在磁盘阵列等多盘系统中util可能出现偏大的情况,所以svctm相应的也可能偏大。

await是平均每次请求的等待时间。这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。

avgqu-sz是平均请求队列的长度。毫无疑问,队列长度越短越好。

说明:svctm参数在未来某个版本的iostat会被删除,详见官方文档。

另外,有时候iostat会显示一些很离谱的结果,具体原因详见官方FAQ给出的解释。
    
25、使用如下命令查看系统中各个进程占用的内存数,按rss从大到小的顺序列出:
[araadm@Sisyphus:/export/home/araadm]$prstat -s rss
PID   USERNAME  SIZE  RSS  STATE  PRI   NICE   TIME  CPU PROCESS/NLWP       
29483 mysql    8296M 4551M sleep   59    0 683:06:27 3.3% mysqld/85
20180 araadm   3861M 2343M sleep   60    0   0:14:21 0.0% ara_ris/89

Note:
* PID:进程的进程 ID。
*USERNAME:真实用户(登录)名称或真实用户 ID。
*SIZE:进程的总虚拟内存大小,以 K、M 或 G 为单位。
*RSS:进程的驻留集大小 (RSS),以 K、M 或 G 为单位。
*STATE:进程的状态 (cpuN/sleep/wait/run/zombie/stop)。
*PRI:进程的优先级。数字更大表示优先级更高。
*NICE:优先级计算中使用的 nice 值。只有特定调度类中的进程才有 nice 值。
*TIME:进程的累计执行时间。
*CPU:进程使用的当前 CPU 时间的百分比。如果在非全局域中执行并且池设备是活动的,百分比将是 zone 绑定的池所使用的处理器集合中处理器的百分比。
*PROCESS:进程的名称(执行文件的名称)。
*NLWP:进程中 lwps 的数量。

You'll need Skype CreditFree via Skype

抱歉!评论已关闭.