solaris 常用命令

硬件系統

1、如何查看cup的狀態?                  作者:南非蜘蛛 
# 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 – UNIX文件系統。是Solaris缺省的文件系統。
hsfs – 高密度CD-ROM文件系統,是隻讀文件系統。
pcfs – 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版本號                            作者:gunguymadman007
# prtconf –V
OBP 3.20.0 2000/10/24 10:47
# /usr/platform/sun4u/sbin/prtdiag –v | 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位內核模式                      作者:gunguymadman007
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

13、測定當前的顯示器刷新頻率
# /usr/sbin/fbconfig –rev \?

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、主機雙屏幕設置。           作者:iricyan
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、進程工具                 作者:e4gle
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數目          作者:gunguymadman007
# df –F ufs –o i

7、顯示cpu使用率最高的進程                   作者:gunguymadman007
# ps –eo pid,pcpu,args | sort +1n
該命令輸出當前系統進程的pid, CPU佔用率及命令描述,並以pcpu來排序  

8、查看當前的OpenWindows版本                    作者:gunguymadman007
# showrev –w
OpenWindows version:
X11 Version 6.4.1 5 November 2001

9、查看當前CDE的版本                                作者:gunguymadman007
# /usr/ccs/bin/what /usr/dt/bin/dtmail
/usr/dt/bin/dtmail:
CDE Version 1.4.6_06
CDEVersion1.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 –gtime –ilevel -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等,但是超級用戶可以,如何補救?           作者:kesin
   用/etc/skel/local.cshrc 替換掉登陸路徑下的 .cshrc, 重新登陸, 就OK了!
$cp /etc/skel/local.cshrc ./

14、關機時這個題是什麼意思?             作者:sunmarmot
/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、如何查看你的默認語言環境?    C.Arthur
# more /etc/default/init

25、如何更改/home的權限?     作者:  xieliangcheng  
停掉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版本信息                      作者:gunguymadman007
# nslookup –class=chaos –q=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、列出當前目錄下的目錄。  作者:brucewoo  
ls -al | grep '^d'

10、用命令行來打開一個新的terminal。   作者:beginner-bj   
/usr/dt/bin/dtterm



X86或者Vmware:

1、在Solaris10 x86上掛接window98分區的方法。    作者:k338  
#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分區的話,可參考本方法。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章