本文主要是介绍Check system info on Solaris,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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 的数量。
这篇关于Check system info on Solaris的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!