1
、如何查看
cpu
的状态?
�
# psrinfo -v
# mpstat
可以列出多
cpu
负载的状态
2
、如何查看内存?
�
# prtconf | grep 'Memory'
可以查看内存的多少
.
# /usr/platform/sun4u/sbin/prtdiag
3
、如何动态添加
swap
分区?
# $su
-
root -----
成为超级用户
# mkfile 100m /home/swapfile -----
创建
100m
的
Swap
文件
# /usr/sbin/swap
-
a /path/filename -----
激活
Swap
文件
# /usr/sbin/swap
-
l -----
验证
swap
文件
# /usr/sbin/swap
-
d /path/filename -----
取消
swap
文件
# rm -rf /home/swapfile -----
删除
swap
文件
4
、如何查看当前网卡是以何种速率起来的?
# dmesg |grep Link
5
、如何调整
x-window
的分辨率和刷新频率?
字符界面登陆,运行:
#/kdmconfig
6
、如何使用光、软驱?
一般情况下用:
# /etc/init.d/volmgt start
# volcheck
以上方法不行,用:
# /etc/init.d/volmgt stop
# mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /cdrom --
挂接光驱
# mount -F pcfs /dev/diskette0 /floppy --
挂接软驱
solaris
定义系统磁盘文件系统说明:
ufs
�C
UNIX
文件系统。是
Solaris
缺省的文件系统。
hsfs
�C
高密度
CD-ROM
文件系统,是只读文件系统。
pcfs
�C
PC
文件系统,支持
DOS
格式化的软盘
7
、
SCSI
设备的命名规则是什么?
带有总线控制器的硬盘的使用,下面列出了总线控制器的硬盘命名习惯:
cWtXdYsZ
c Logical controller number
t Physical bus target number
d Drive number
s Slice (or partition) number (0 to 7)
例如:
/dev/rdsk/c0t0d0s0
该原始接口对应第一个控制器的第一个
SCSI
目标地址的第一个硬盘的第一片
(
根
)
/dev/rdsk/c0t0d0s2
该原始接口对应第一个控制器的第一个
SCSI
目标地址上的第一个硬盘的第三片
(
表示整上硬盘
)
8
、如何查看硬盘的使用情况?
�
# df -k
���
可以看到已安装的文件系统的空间大小及剩余空间大小。
# quota -v
�
查看用户的磁盘空间信息
,
如果你用
quota
限制了用户空间大小的话。
# du -sk
���
查看目录的使用情况
# du -k | sort -n
可以迅速发现那个目录是最大的。
9
、如何查看硬盘物理信息?
# format
这个命令也可以查看硬盘的类型和分区的详细情况
# iostat -E
��看硬盘的大小和型号
# prtvtoc /dev/rdsk/c0t0d0s0
显示某个磁盘的分区状况
10
、查看系统内核命令。
�
# isainfo
看内核的
bit,
# isainfo -kv
调整内核
# modinfo
显示可载入的模组
# prtconf
显示系统硬件配置(周边设备)
#sysdef
显示可载入的模组,硬件配置与一些可以调整的核心参考值
#ulimit -a
11
、打印当前的
OBP
版本号
# prtconf �CV
OBP 3.20.0 2000/10/24 10:47
# /usr/platform/sun4u/sbin/prtdiag �Cv | grep OBP
OBP 3.20.0 2000/10/24 10:47 POST 6.1.0 2000/10/24 10:49
ok. .version
Release 3.20 Version 0 created 2000/10/24 10:47
OBP 3.20.0 2000/10/24 10:47
POST 6.1.0 2000/10/24 10:49
OBDIAG 4.5.1 2000/10/24 10:48
12
、查看及启动系统的
32
位或
64
位内核模式
64
位模式
# isalist �Cv
sparcv9+vis sparcv9 sparcv8plus+vis sparcv8plus sparcv8 sparcv8-fsmuld sparcv7 sparc
# isainfo �Cv
64-bit sparcv9 applications
32-bit sparc applications
# isainfo �Cb
64
启动
64
位内核模式
ok. boot kernel/sparcv9/unix
32
位模式
# isalist �Cv
sparcv8plus+vis sparcv8plus sparcv8 sparcv8-fsmuld sparcv7 sparc
# isainfo �Cv
32-bit sparc applications
# isainfo �Cb
32
启动
32
位模式
ok. boot kernel/unix
13
、测定当前的显示器刷新频率
# /usr/sbin/fbconfig �Crev \?
14
、如何配置网卡
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
15
、
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
16
、查找网卡名称及接口个数
作者:阿丙
# grep network /etc/path_to_inst
17
、如何一块网卡帮定三个
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
18
、如何在
prom
状态下查看光纤硬盘
?
stop +a
进入
ok
状态:
ok> select
光纤卡设备名(可用
show-devs
查看到)
ok> show-children
19
、主机双屏幕设置。
1.Confirm there are two Video Cards
。
2.Confirm driver installed and patches installed if need
。
3.vi /usr/dt/config/Xservers.
comment the last line.
and uncomment the nearest line like this.
4.reboot.
20
、查看硬盘参数及其物理地址:
#format </dev/null
21
、显示磁盘的分区情况:
#prtvtoc /dev/rdsk/c0t0d0s2
系统应用:
1
、、查看系统运行级别
# who -r
看运行级别
2
、进程工具
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/
里面。
3
、
patch
软件包的安装
每个补丁都有编号。例如补丁号为
101945
,版本是
34
的话,这个补丁的目录名就是
101945-34.
# patchadd 105160-01
安装补丁
# patchrm
删除补丁
# patchadd -p
检查系统的补丁情况
# showrev -p
查看所有已经安装的
patch
4
、如何容许
root
用户远程登录?
# vi /etc/default/login
CONSOLE=/dev/console ---
用
#
注释掉这一行。
5
、如何限定
telnet
登陆数?
solaris pts
的数量缺省为
47,
修改
/etc/system
文件,
增加如下内容
:
set maxusers=
数量
set pt_cnt=
数量
6
、显示已经使用和未使用的
i-node
数目
# df �CF ufs �Co i
7
、显示
cpu
使用率最高的进程
# ps �Ceo pid,pcpu,args | sort +1n
该命令输出当前系统进程的
pid, CPU
占用率及命令描述,并以
pcpu
来排序
8
、查看当前的
OpenWindows
版本
# showrev �Cw
OpenWindows version:
X11 Version 6.4.1 5 November 2001
9
、查看当前
CDE
的版本
# /usr/ccs/bin/what /usr/dt/bin/dtmail
/usr/dt/bin/dtmail:
CDE Version 1.4.6 _06
CDEVersion 1.4.6 _06
10
、文消掉本中的
^M
# cat test.dat | tr -d '\015' > test.out
这样可以将
test.dat
内
^M(\015)
这个字元去掉
,
产生
test.out
11
、关机命令。
关闭系统的方式根据关闭的原因而不同
.
执行关闭有的是为了转至执行等级
S
,有的是要停止操作系统并关闭设备的电源
.
(1) /usr/sbin/shutdown �Cgtime �Cilevel -y
(2) init 0
(3) halt
(4) STOP+A ; sync
(5)
关闭电源
紧急情况,按
Stop_A ,
如
Stop_A
不起作用,则将设备电源关闭再打开
.
这是
极端情况
.
这两种方法不是干净的关闭,是突然关闭的,仅在紧急情况使用
.
12
、
Solaris
下怎么发送即时消息?
用
wirte
命令到单个用户的终端。
$ wirte username
输入消息正文,结束按
ctrl-d,
消息就会出现在用户终端。
用户可以用
mesg n[y]
来决定是否启动接受消息。
用
wall
,是发给所有系统用户。
$ wall
hello ,i love you ......
结束用
ctrl-D.
rwall -n netgroup
给网络上所有用户。
$ rwall -n workgroup --------
发给组
workgroup
下的每一个用户
hi ! no smoking ......
结束用
ctrl -d
$ rwall sune450 ------
或者主机名为
sune450
。用法如上。。。
13
、系统是
sunos5.8
,
不知何种原因现在唯一的普通用户起不了
Terminal, vi
等,但是超级用户可以,如何补救?
用
/etc/skel/local.cshrc
替换掉登陆路径下的
.cshrc,
重新登陆,
就
OK
了!
$cp /etc/skel/local.cshrc ./
14
、关机时这个题是什么意思?
/usr/sbin/vold[724]: [ID 244572 daemon.error]
卸载
/vol
时发生问题;中断系统调用
uxwdog[481]: [ID 248799 daemon.error] error communicating with server (Broken pipe)
你还没卸下来
/VOL
就启动,才出问题,运行:
# umount -f /vol
后再做。
15
、
find
常用的例子:
命令格式
: find dir -name filename command
例子
:
# find . -name hello -print
寻找目前目录及所有的子目录内叫
hello
的文档。
# find . -ctime +7 -print
找出七天内未被更动的文档
# find . -size + 2000m -print
找出大小超过
2000 bytes
的文档
# find /tmp -user b1234567 -print
在
/tmp
下属於
b1234567
的文档
# find . -name '.c' -exec rm {}
删除所有的
.c
档
# find . -name test\ -print
显示当前目录及其子目录文件名前
4
位为
test
的文件名
16
、忘记
solarsi
的
root
口令怎么办?
方法一
:
1.
别怕
,
跟我来
.
2.
把你的
solaris
光盘放进
cdrom
3.
键入
stop+a
4.
当出现
'ok'
字样时
,
键入
boot cdrom -s
5.cd /tmp
6.mkdir /tmp/xxx (xxx
是什么鬼东西就无关紧要了
)
7.mount /dev/dsk/c0t0d0s0 /tmp/xxx (
在这里
c0t0d0s0
是你的
root
盘
)
8.
运行
csh
9.TERM=sun;export TERM
或者
setenv TERM vt220
10.cp /tmp/root/xxx/shadow /tmp/root/xxx/shadow/shadow.backup
11.vi /tmp/root/xxx/shadow
并且将
password
里
root
项删除。
12.
重启动,你就可以以无密码的
root
登陆了,这时更改你的密码。
要是没有
shadow,
就把
/etc/passwd
里
root
用户名后面的
X
删掉
,
就可以了
方法二
:
找一台有系统的
solaris
机器
,
把忘记密码的系统放进去
mount
上来
,
重复方法一
10
以后的步骤
.
solaris for x86
的机器:
用光盘启动到要你安装的时候退出去就成单用户,剩下的操作如上。
17
、常见文件的解压
���
一般而言
,
在
solaris
下
,
会有这么几种格式的软件
:
1) .gz
结尾的文件
,
我们用
gunzip
或者
gzip -d
来解压
,
再用
tar
来解压
.
2) .tar
结尾的文件
,
我们肯定知道用
tar xvf
的格式来解压
.
3) .zip
结尾的文件
,
我们用
unzip,
注意
,
这个只有在高版本的
solaris
下
,
才有
.
而且该文件格式以
solaris
的
patch
比较多
.
4) .Z
结尾的文件
,
我们一般用
uncompress
来解压
(
当然
,
每个人的习惯不一样
.)
上面讲的是解压
,
一般解压后
,
会生成这么几种方式
:
1)
生成
.local
的文件
,
这个时候
,
我们用
: pkgadd -d xxx.local
来安装
.
2)
生成一个目录
,
而且该目录下会有一些
pkg
信息
,
我们用
: pkgadd -d . ;
指在当前目录下
,
安装
,
并且按照缺省的路径来安装
.
3)
生成一个数字的目录
,
一般是指
solaris
的
patch,
这个时候我们用
patchadd
来安装
.
18
、如何在命令行界面替换一个文件中的字符段?
# vi file
在命令模式中输入:
:
1
,
$s/diag/peng/g
全文件查找
diag
并替换为
peng
19
、请问
TERM=VT100
和
TERM=dtterm
都在什么情况下设置?
作者:
C.Arthur
一般情况下如果你在机器的显示器上登陆或者通过
XMANAGER
等登陆,就默认是
dtterm
,
telnet
一般是
ansi
,当你通过
telnet
修改文件的时候,需要设置成
TERM = VT100 ; export TERM
20
、如何查看系统的版本?
$ uname -X
$ more /etc/release
21
、命令行进入
CDE
:
#/usr/dt/bin/dtlogin -daemon;exit
or
#/etc/rc2.d/S92dtlogin start;exit;
22
、查看
patch
安装过程中返回错误代码的含义:
#more /usr/sbin/patchadd
23
、如何从一台
SOL8
的机器登录到另外一台
SOL8
的
CDE
桌面上去。
登陆
CDE
的时候点击一下菜单:选择
--
登陆远程主机
--
24
、如何查看你的默认语言环境?
# more /etc/default/init
25
、如何更改
/home
的权限?
停掉
autofs
服务,或者将
/etc/auto_master
的
home
注释掉:
#vi /etc/auto_master
------------
内容如下
----------
# Master map for automounter
#
+auto_master
/net -hosts -nosuid,nobrowse
#/home auto_home -nobrowse
/xfn -xfn
第三方软件应用或技巧
:
1
、查看当前的
bind
版本信息
# nslookup �Cclass=chaos �Cq=txt version.bind
2
、在登录时显示系统指定的消息?
#vi /etc/motd ----
删除所有过时的消息
,
输入新消息
注意:对于已经登录且正在使用系统的用户不显示该消息,超过一屏的消息无法显示。每次修改该文件后,该文件的时间戳随之更新。
3
、去掉文本中
^M
# dos2unix aaa.txt bbb.txt,
会去掉
aaa.txt
中的
^M
,生成
bbb.txt
文件。
4
、将系统中
7
天前的
txt
文件查找并打包。
# find / -mtime -7 >aaa.txt
# tar cvf bbb.tar -I aaa.txt
---
查找出文件记录在
aaa.txt
文件中,在作成
bbb.tar
文件包。
5
、查找并删除比某一天更老的文件:
#find . ! -mtime -<days> | /usr/bin/xarys rn -rf
6
、
solaris9
普通用户下无法正确输入中文的解决方法:
在用户目录在
#vi .profile
修改如下:
stty cs8 -istrip
7
、请问如何防止
telnet
登陆发呆时间过长被踢呢?
这里,
vi /etc/default/login
# TIMEOUT sets the number of seconds (between 0 and 900) to wait before
# abandoning a login session.
#
#TIMEOUT=300
修改之后不是立即生效,在这之后所又的
login session
都符合这个要求,但是在修改之前已经建立的连接不受影响。
8
、如何安装
gcc
。
去
sunfreeware.com
上下载相应平台的
pkg
包的
gcc
版本。
#pkgadd -d gcc
设置环境变量:
bash
和
sh
的
shell:
vi $home/.profiel
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/etc:/usr/local/bin:/usr/ccs/bin;export PATH
CC=gcc;export CC
csh
的
shell
:
vi $home/.cshrc
set path=( /bin /usr/bin /usr/ucb /etc /usr/local/bin /usr/local/sbin .)
setenv CC gcc
9
、列出当前目录下的目录。
ls -al | grep '^d'
10
、用命令行来打开一个新的
terminal
。
/usr/dt/bin/dtterm
X86
或者Vmware
:
1、
在
Solaris10 x86
上挂接
window98
分区的方法。
#mount -F pcfs /dev/dsk/c0d1p0:e /mnt
总结一下:
偶的硬盘是接在
IDE1
的
slaver
盘上,用上述命令可将
E
:盘挂在
/mnt
目录下。如果你的电脑只有一个硬盘,并且是接在主板的
IDE1
槽,设为
Master
盘(通常这种情况较多),现在想挂
WIN98
下的
D
:盘,可输入
#mount -F pcfs /dev/dsk/c0d0p0:d /mnt
注意,
/mnt
可以改为任意的其它空目录,如
/data(
我在文件管理器中自己
新建的一个目录),可改为
#mount -F pcfs /dev/dsk/c0d0p0:d /data
按回车后如没有任何出错提示,则表示挂接成功,你就可以进入挂接的文件夹(此处为
/data
)找到你所挂接的
win98
的
D
:分区上的文件了。
本方法经过偶
N
次实验,是确实可行的。为后来者不再偶走过的弯路,偶特在此总结一下,哪位初学者不会在
Solaris10 x86
(
Solaris9
也应该行)
挂
win98
分区的话,可参考本方法。
查找网卡名称及接口个数
作者:阿丙
grep network /etc/path_to_inst
在
Solaris10 x86
上挂接
window98
分区的方法:
#mount -F pcfs /dev/dsk/c0d1p0:e /mnt
总结一下:
偶的硬盘是接在
IDE1
的
slaver
盘上,用上述命令可将
E
:盘挂在
/mnt
目录下。如果你的电脑只有一个硬盘,并且是接在主板的
IDE1
槽,设为
Master
盘(通常这种情况较多),现在想挂
WIN98
下的
D
:盘,可输入
#mount -F pcfs /dev/dsk/c0d0p0:d /mnt
注意,
/mnt
可以改为任意的其它空目录,如
/data(
我在文件管理器中自己
新建的一个目录),可改为
#mount -F pcfs /dev/dsk/c0d0p0:d /data
按回车后如没有任何出错提示,只是回到命令提示符
#
则表示挂接成功,你就可以进入挂接的文件夹(此处为
/data
)找到你所挂接的
win98
的
D
:分区上的文件了。
本方法经过偶
N
次实验,是确实可行的。为后来者不再偶走过的弯路,偶特在此总结一下,哪位初学者不会在
Solaris10 x86
(
Solaris9
也应该行)
挂
win98
分区的话,可参考本方法。
查看硬盘参数及其物理地址:
#format </dev/null
显示磁盘的分区情况:
#prtvtoc /dev/rdsk/c0t0d0s2
命令行进入
CDE
:
#/usr/dt/bin/dtlogin -daemon;exit
or
#/etc/rc2.d/S92dtlogin start;exit;
查看
patch
安装过程中返回错误代码的含义:
#more /usr/sbin/patchadd
查找并删除比某一天更老的文件:
#find . ! -mtime -<days> | /usr/bin/xarys rn -rf
solaris9
普通用户下无法正确输入中文的解决方法:
在用户目录在
#vi .profile
修改如下:
stty cs8 -istrip
当你想要
umount
一个设备时,有人在用,设备无法
umount
。可以用
fuser
-
u /mount-point.
看到谁在使用,然后杀之!!!!
-
u
显示使用该设备的用户
-
k
杀掉使用该设备的进程