aix_1

wangzhensheng發表於2008-03-25
aix_1[@more@]

如何查詢系統中的某個檔案存在於哪個檔案集中?
當作業系統上由於未安裝特定的檔案集而無法執行某個命令時, 可以參考下面的方法確定所需的檔案集.
首先確認系統中已安裝了檔案集 bos.content_list:
# lslpp -l bos.content_list
然後用下面的命令查詢與指定檔案相關的檔案集:
# /usr/sbin/which_fileset
如, # /usr/sbin/which_fileset iostat
/usr/bin/iostat bos.acct

查詢指定的檔案集中包含哪些檔案:
# lslpp -f
如, # lslpp -f bos.acct
....
/usr/bin/iostat
....

————————————————————————————————————————

使用命令列安裝刪除檔案包?
在AIX 中, 一般使用"smit"命令來安裝和刪除檔案包,但有時經常會遇到"smit"本身被破壞的情況, 我們可以使用"installp"命令來安裝及刪除檔案包.
安裝: installp -ac -Q -d /dev/cd0
刪除: installp -u

————————————————————————————————————————

AIX中如何解決不能釋放光碟機的問題?
在AIX上由於異常終止或其它原因經常會遇到不能正常釋放光碟機的問題
#fuser -kxuc /dev/cd#
或#fuser /dev/cd# 列出當前訪問此裝置的程式,然後使用kill -9 pid終止所有程式。


————————————————————————————————————————

AIX如何解決"device busy"問題?
當我們對網路或網路卡進行操作時,經常會遇到"device busy", 而不讓我們進行操作.
例如:
rmdev -l ent1
Method error (/etc/methods/ucfgdevice):
0514-062 Cannot perform the requested function because the
specified device is busy.
1.首先我們要確認網路介面已經"down"及 "detached".
使用以下指令碼檔案可以"down"及"detach"所有TCP/IP網路介面.
interfaces=`lsdev -Cc if -F name | grep -v lo0`
for interface in $interfaces
do
ifconfig $interface down
ifconfig $interface detach
done
2. 檢查是否下列應用正在執行:
1) SNA : lssrc -g sna (檢查SNA是否執行)
stopsrc -g sna(中斷)
stopsrc -f -s sna(強行中斷)
如果以上兩條命令都不起作用: /usr/bin/sna -stop sna -t forced
如果仍不能中斷: /usr/bin/sna -stop sna -t cancel
2) IPX: ps -ef |grep npsd
ps -ef |grep sapd (IPX是否執行)
/usr/lpp/netware/bin/stopnps (中斷)
3) Netbios: ps -ef | grep netbios (是否執行)
mcs0 unload (中斷)

以上步驟對於大部分"device busy"問題都可解決.


————————————————————————————————————————

解決AIX中不能增加新使用者,錯誤資訊 3004-687?
解答
1. 檢查root檔案系統是否已滿?
2. 檢查:
-/etc/passwd 檔案中是否有空行
-/etc/passwd 檔案中是否部分行語法不正確
-nobody 使用者是否丟失或其group為-2. 該行應該如下:
nobody:!:4294967294:4294967294::/:
3. 如果以上均正確,檢查/etc/security目錄中的以下檔案的許可權許可:
檔案 許可權
------------------------
.ids -rw-------
environ -rw-r-----
limits -rw-r-----
passwd -rw-------
user -rw-r-----
4. 以下的命令對排錯也很有幫助(查MAN來獲得詳細的幫助)
usrck -t ALL
pwdck -t ALL
grpck -t ALL
5. 在mkuser.default 檔案中的umask屬性是八進位制,但不需要有前置0,所以:
umask=77 正確,轉成八進位制 077.
umask=077 錯誤,轉成八進位制 063.

6. 如果以上都正確,關機並重啟,對root 和 user檔案系統做fsck。
————————————————————————————————————————

檢視已安裝的軟體資訊:
ls -aF /usr/lpp (lpp:Licensed Program Products)
檢視安裝媒體內容:
installp -q -d /dev/cdrom -l


————————————————————————————————————————

啟動時自動載入檔案系統資訊:
需要載入的資訊存放在/etc/filesystems
mount -t nf 載入所有在/ect/filesystems中定義type=nfs的檔案系統
顯示已載入的檔案系統及狀態: df -v,mount
————————————————————————————————————————

有關TCP/IP的命令
網路卡:
smit chgenet,chgtok,chgfddi,opschange,mktty:adptr架構快速路徑
smit mkinet,ppp:slip與ppp快速路徑
ifconfig:config介面
位址:
/etc/hosts 靜態主機表
/etc/resolv.conf 位址解析的名稱伺服器
/etc/named.boot 名稱伺服器架構
/etc/named.ca 根名稱伺服器快取
/etc/named.data 位址列表
/etc/named.rev 反轉指標列表
nslookup 查詢名稱伺服器資訊
網路路由:
route 管理路由
netstat -rn 列出定義的路由
routed 路由(daekmin rip)
gated 路由(daekmin rip、egp、hello)
/etc/gateways 已知閘道器
/etc/networks 已知網路
服務:
/etc/services
/etc/inetd.conf
TCP/IP群組子系統:
/etc/rc.net
startsrc -g tcpip 啟動全部的tcpip子系統
startsrc -s inetd 啟動主要internet
除錯:
iptrace 啟動封包追蹤
ipreport 追蹤結果格式化輸出
netstat 網路統計
ping 檢查是否可以到達
檢視HACMP,外部硬碟資訊:
lscfg -v
lsdev -Cc adapter
對等機器資訊:
/etc/.rhosts
/etc/hosts.equiv
/etc/hosts


————————————————————————————————————————
RS6000 更換硬碟的過程
我公司2號機上報hdisk0 operation error..需更換硬碟
HDISK0和HDISK1做成MIRROR,是ROOTVG。
先做系統備份
tctl -f /dev/rmt0 rewind
smitty mksysb
檢視HDISK0的S/N,P/N號等,在換盤的時候做對照
lscfg -vl hdisk0
檢視物理卷
lspv
檢視邏輯卷組
lsvg
檢視在用的邏輯卷組
lsvg -o
檢視所有硬碟(包括邏輯盤)的狀態
lsdev -Cc disk
檢視7133磁碟櫃硬碟狀態
lsdev -Cc pdisk

停HACMP,
smitty clstop
使用lsvg -o 命令會看不到一些(應用)VG(1號機會接管);使用 netstat -i命令可以看到系統SVC地址會變成BOOT地址
把HDISK0從ROOTVG中不做MIRROW
unmirrorvg rootvg hdisk0
檢視物理卷
lspv
這時HDISK0不在和HDISK1為MIRROR
把hdisk0從rootvg中去除
reducevg rootvg hdisk0
在HDISK1上建立boot image
bosboot -ad hdisk1
改變啟動裝置的順序
bootlist -m normal hdisk1 cd0
刪除HDISK0
rmdev -l disk0 -d
lspv
lscfg -vl hdisk0
以上2條命令不會顯示HDISK0的相關資訊

關機
shutdown -F
把2號機的外設機箱取出,更換硬碟。注意要標好各電纜的位置

開機
lspv
發現多出HDISK4,而我們需要的是HDISK0
刪除HDISK4
rmdev -l hdisk4 -d
cfgmgr
lspv
發現多出HDISK0,HDISK4,可能是我前面刪除HDISK0,沒有做cfgmgr的原因
刪除HDISK4,HDISK0
rmdev -l hdisk4 -d
rmdev -l hdisk0 -d
cfgmgr
lspv
好了,HDISK0出現了
把HDISK0加到ROOTVG中
extendvg rootvg hdisk0
做MIRROR
mirrorvg -c 2 rootvg
檢視PV
lspv
OK
在HDISK0,HDISK1上建立boot image
bosboot -ad hdisk0
bosboot -ad hdisk1
改變啟動裝置的順序
bootlist -m normal hdisk0,hdisk1 cd0

重啟動2號機
shutdown -Fr

關閉1號機的HACMP.
Smitty clstop
重啟動1號機
shutdown -Fr
啟動1號機的HACMP
smitty clstart

啟動2號機的HACMP
smitty clstart

一切OK

注意
可觀察CLUSTER的啟動:/usr/es/adm/cluster.log, /tmp/hacmp.out
CLUSTER的版本 lslpp -l|grep cluster
網路的狀態 netstat -ni

————————————————————————————————————————

AIX如何自動啟動和關閉軟體的執行?

討論瞭如何定製系統, 以使使用者定義的應用在系統引導過程中自動啟動, 並在系統關閉時自動停止.

1. 自動啟動定製的軟體
在系統引導時, init程式順序檢測/etc/inittab檔案, 決定在引導過程中進行什麼樣的操作.如果應用, 程式或其它的使用者操作需要在系統引導過程中進行, 則要在/etc/inittab檔案中加入相應的條目.通常的做法是建立一個名為rc.local的指令碼檔案, 將所有要在系統引導過程中啟動的使用者應用寫入該指令碼檔案中. 該指令碼檔案可以在/etc/inittab檔案中被呼叫, 通常是在所有系統應用和服務啟動後, 在使用者登入被允許之前被呼叫. 位置通常是在主控登入的條目前.
下面是一個例子:
rc.local:2:wait:/etc/rc.local > /dev/console 2>&1
在上面的條目中, init將在執行餘下的條目之前等待該指令碼程式的完成.如果程式, 應用或命令需要透過特定的使用者執行, 則可在執行的命令中加入su命令.
如: su myuser "-c /usr/bin/myapp"
建議在指令碼程式中加入應用開始啟動和完成啟動的輸出提示.
如:
#!/bin/ksh
echo "Starting User Applications...."
echo "Starting Application XYZ"
su myuser "-c /usr/bin/myapp"
echo "Startup of User Applications completed"
2. 自動停止定製的軟體
shutdown命令用於關閉AIX系統. 在此操作中會關閉所有AIX子系統及檔案系統.如果名為/etc/rc.shutdown的指令碼程式存在, 系統會首先執行該指令碼程式中的命令. 在該指令碼程式中可以加入關閉使用者應用的命令. 建議在指令碼程式中加入應用停止執行和完成停止執行的輸出提示.
如:
#!/bin/ksh
echo "Stopping User Applications...."
echo "Stopping Application XYZ"
[ commands to stop application ]
echo "Shutdown of User Applications completed"

本篇文章來源於 飛揚教程 原文連結:

======================================

1. 主機平臺與叢集系統
  1.1 IBM AIX常用基本命令
  可以用man command 察看命令使用幫助
  如 man ls 看ls命令的使用幫助
  1.1.1 啟動與關閉(必須擁有root許可權)
  ? 系統關閉
  shutdown +n 在n分鐘後關閉系統
  shutdown –F 立即關閉停止系統
  shutdown now 警告使用者退出並關閉停止系統
  ? 系統重新啟動
  shutdown –r time 一定時間後關閉系統並重新啟動
  shutdown –Fr 立即關閉系統並重新啟動
  ? 關掉AIX到單使用者模式
  telinit S
  init s
  shutdown -m
  1.1.2 目錄與檔案操作
  ? 建立目錄
  mkdir dirname 建立一個新的目錄
  ? 更換目錄
  cd pathname 更換當前目錄至新的目錄位置
  cd .. 更換當前目錄至現目錄的上級目錄(即返回至父目錄)
  cd 更換當前目錄至當前使用者的根目錄
  ? 檢視當前目錄
  pwd 顯示當前的目錄
  ? 檢視檔案資訊
  ls dirname 列出目錄下的檔案
  ls –a dirname 列出目錄下的所有檔案(包括隱含檔案)
  ls –l filename 列出檔案的詳細資訊
  ls -aF /usr/lpp (lpp:Licensed Program Products) 檢視已安裝的軟體資訊
  installp -q -d /dev/cdrom -l 檢視安裝媒體內容
  ? 檢視檔案內容
  cat filename 顯示檔案內容
  pg filename或者more filename 按頁顯示檔案內容
  ? 判斷檔案型別
  file filename 顯示檔案的型別——文字檔案、shell命令、資料檔案或其他
  ? 更名或移動
  mv oldfilename newfilename 將檔案更改為新的檔名
  mv filename pathname 將檔案移動至新的目錄
  mv olddirname newdirname 將目錄更改為新的目錄名
  ? 複製檔案或目錄
  cp source destination 將原始檔複製至目標位置(或檔案)
  cp –r source destination複製源目錄至目標位置
  ? 刪除目錄或檔案
  rm filename 刪除單一檔案
  rmdir dirname 刪除空目錄
  rm –r dirname 刪除目錄及其子目錄的所有檔案
  ? 查詢檔案
  find pathname –name filename -print 在目錄下尋找檔案
  1.1.3 安全與許可權設定
  ? 更改使用者密碼
  passwd 更改當前使用者的密碼
  passwd username 更改某使用者的密碼(必須擁有root許可權)
  ? 更改當前使用者
  su username 將當前使用者暫時更改為另一使用者
  ? 設定檔案或目錄的許可權
  chmod permission filename 為檔案或目錄設定讀、寫、執行的許可權
  ? 更改檔案或目錄的屬主
  chown username[:grpname] filename 為檔案或目錄設定屬主與屬主組
  chown –r username direname 為目錄及其子目錄內的所有檔案設定屬主
  chgrp grpname filename 為檔案或目錄設定屬主組
  1.1.4 程式管理
  ? 檢視程式資訊
  ps processid 顯示某程式的資訊
  ps -ef 顯示程式的詳細資訊(包括父程式號)
  ps -aux 按佔用CPU與記憶體資源的多少順序顯示程式的資訊
  ? 終止程式
  kill processid 終止某程式的執行
  1.1.5 裝置管理
  lsdev –Cc device列出裝置屬性資訊,如
  lsdev -Cc tape
  lscfg device 列出裝置詳細資訊
  lsattr –El device 列出裝置屬性資訊,如
  lsattr –El mem0 察看實體記憶體具體資訊(大小、可用)
  cfgmgr 查詢並配置新裝置
  rmdev –dl devicename 刪除裝置
  diag 啟動診斷程式
  1.1.6 系統日誌
  errpt 顯示所有日誌
  errpt –aj number 顯示相關日誌具體內容
  1.1.7 系統監控
  ? 系統資源監控
  vmstat interval count 每隔一定時間顯示CPU與虛擬記憶體等資源使用情況
  ? 網路監控
  netstat interval 每隔一定時間顯示網路吞吐流量
  ? 資料I/O監控
  iostat interval count 每隔一定時間顯示I/O吞吐流量
  1.2 儲存系統管理命令
  1.2.1 檔案系統基本命令
  ? 裝配檔案系統
  mount –v type mountpoint 將檔案系統mount至指定的目錄位置
  如:mount –v cdrfs –r /dev/cd0 /mnt 將光碟mount至/mnt目錄
  ? 解除已裝配的檔案系統
  umount mountpoint 取消已mount的檔案系統
  ? 檢視檔案系統資訊
  df 顯示已mount的檔案系統資訊
  df –k 按1024k bytes為單位顯示已mount的檔案系統資訊
  ? 檢視硬碟資源的使用情況
  du dirname 顯示目錄佔用的硬碟空間
  du –k dirname 按1024k bytes為單位顯示目錄佔用的硬碟空間
  1.2.2 卷管理命令
  lspv 列出所有物理卷
  lspv hdiskn 列出物理卷hdiskn資訊
  lsvg 列出所有卷組
  lsvg –l vgname 列出卷組vgname上的邏輯卷
  lsvg –o vgname 列出卷組vgname的資訊
  lslv 察看邏輯卷
  veryonvg vgname 啟用vgname卷組
  lsps -a 顯示交換區的分佈資訊
  lsps -s 顯示交換區的使用資訊
  slibclean 清除處理程式遺留的舊分頁資訊
  swapon -a 啟動所有的分頁空間
  
  ? 系統管理工具smit (建議基本管理操作均利用此工具進行)
  smitty 啟動管理工具字元方式選單
  System Management
  
  Move cursor to desired item and press Enter.
  
  Software Installation and Maintenance
  Software License Management
  Devices
  System Storage Management (Physical & Logical Storage)
  Security & Users
  Communications Applications and Services
  Print Spooling
  Problem Determination
  Performance & Resource Scheduling
  System Environments
  Processes & Subsystems
  Applications
  Using SMIT (information only)
  
  F1=Help F2=Refresh F3=Cancel Esc+8=Image
  Esc+9=Shell Esc+0=Exit Enter=Do
  
  使用舉例:檔案系統空間擴大
  在以上選單下游標移到System Storage Management (Physical & Logical Storage)回車出現
  System Storage Management (Physical & Logical Storage)
  Move cursor to desired item and press Enter.
  
  Logical Volume Manager
  File Systems
  Files & Directories
  Removable Disk Management
  System Backup Manager
  F1=Help F2=Refresh F3=Cancel Esc+8=Image Esc+9=Shell Esc+0=Exit Enter=Do
  游標移到File Systems回車,出現
  File Systems
  Move cursor to desired item and press Enter.
  
  List All File Systems
  List All Mounted File Systems
  Add / Change / Show / Delete File Systems
  Mount a File System
  Mount a Group of File Systems
  Unmount a File System
  Unmount a Group of File Systems
  Verify a File System
  Backup a File System
  Restore a File System
  List Contents of a Backup
  
  F1=Help F2=Refresh F3=Cancel Esc+8=Image Esc+9=Shell Esc+0=Exit Enter=Do
  
  移動至Add / Change / Show / Delete File Systems選單條,回車出現
  Add / Change / Show / Delete File Systems
  Move cursor to desired item and press Enter.
  
  Journaled File Systems
  CDROM File Systems
  Network File System (NFS)
  Cache FS
  
  F1=Help F2=Refresh F3=Cancel Esc+8=Image Esc+9=Shell Esc+0=Exit Enter=Do
  第一選單條回車出現
  Journaled File Systems
  Move cursor to desired item and press Enter.
  
  Add a Journaled File System
  Add a Journaled File System on a Previously Defined Logical Volume
  Change / Show Characteristics of a Journaled File System
  Remove a Journaled File System
  Defragment a Journaled File System
  
  F1=Help F2=Refresh F3=Cancel Esc+8=Image Esc+9=Shell Esc+0=Exit Enter=Do
  選擇第三選單條後出現
  Journaled File Systems
  
  File System Name
  Move cursor to desired item and press Enter.
  
  [TOP]
  /
  /home
  /usr
  /var
  [MORE...7]
  F1=Help F2=Refresh F3=Cancel
  Esc+8=Image Esc+0=Exit Enter=Do
  F1 /=Find n=Find Next
  選中指定檔案系統(如 / )回車出現
  Change / Show Characteristics of a Journaled File System
  Type or select values in entry fields.
  Press Enter AFTER making all desired changes.
  [Entry Fields]
  File system name /
  NEW mount point [/]
  SIZE of file system (in 512-byte blocks) [65536]
  Mount GROUP [bootfs]
  Mount AUTOMATI

==========================================

在AIX作業系統上有很多的命令。這裡介紹一些系統級的命令,它將有助於回答一些常見問題。大家以此做參考,並補充修改。
以下命令在AIX 5.1上測試透過。

以下命令在AIX 5.1上測試透過。

關於核心

顯示AIX系統核心是32位還是64位:
bootinfo -K

如何改變核心模式(32位或64位)
/unix檔案連線到一個可引導的映像。透過命令ls -l /unix檢視:
/unix -> /usr/lib/boot/unix_up # 32 bit uniprocessor kernel
/unix -> /usr/lib/boot/unix_mp # 32 bit multiprocessor kernel
/unix -> /usr/lib/boot/unix_64 # 64 bit multiprocessor kernel

在AIX系統安裝時,預設安裝的核心是32位。可以用如下命令更改核心模式:
ln -sf /usr/lib/boot/unix_64 /unixln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unixbosboot -ad /dev/hdiskxxshutdown -r

注意:/dev/hdiskxx是指引導邏輯卷/dev/hd5所在的硬碟。可透過下面命令來檢視xx是幾:
lslv -m hd5


關於硬體

顯示機器硬體是32位還是64位:
bootinfo -y

檢視機器的實體記憶體是多少:
bootinfo -r

lsattr -El sys0 -a realmem

檢視機器是否支援64位核心(是否64位硬體)
/usr/sbin/bootinfo -p
如果返回32,則表示硬體是32位的;如果返回的是chrp,則表示硬體是64位的機器。

顯示當前磁帶裝置rmt0的屬性:
lsattr -l rmt0 -E

顯示預設的磁帶裝置rmt0的屬性:
lsattr -l rmt0 -D

顯示終端裝置tty0的登入屬性:
lsattr -l tty0 -a login -R

顯示系統級屬性:
lsattr -E -l sys0

檢視當前系統有多少CPU:
lscfg | grep proc

檢視當前系統有多少硬碟而且是否被使用:
Lspv

檢視當前系統的詳細配置:
lscfg -pv
也可以顯示某一裝置的配置:
lscfg -vl rmt0

檢視當前系統的晶片名稱、系統名、節點名、型號等:
uname -p # 顯示晶片名稱,例如:powerpc
uname -r # 顯示作業系統的發行號
uname -s # 顯示系統名,例如:AIX
uname -n # 顯示節點名
uname -a # 顯示系統名、節點名、版本、機器ID
uname -M # 顯示型號,例如:IBM,7046-B50
uname -v # 顯示作業系統版本
uname -m # 顯示機器ID


關於AIX

檢視AIX的版本、發行號、ML(Maintenance Level)級別:
oslevel -r

lslpp -h bos.rte

如何改變檔案系統大小,例如:將/usr檔案系統增加1000000位元組:
chfs -a size=+1000000 /usr

如何使用CD:
mount -V cdrfs -o ro /dev/cd0 /cdrom

檢視本機的IP地址:
Ifconfig -a

host Fully_Qualified_Host_Name
例如:host cyclop.austin.ibm.com

查詢哪一個檔案集(fileset)包含特定的檔案,例如:查詢/usr/bin/vmstat屬於哪一個檔案集。
lslpp -w /usr/bin/vmstat

顯示哪一個檔案集包含/usr/bin/svmon:
Which_fileset svmon

檢視某一級別的ML中所有檔案是否都已經安裝:
instfix -i | grep ML

如何確定某一補丁(fix)是否安裝,例如:檢視IY24043是否安裝
instfix -ik IY24043

顯示哪些檔案集需要安裝或修改:
lppchk -v

檢視交換區(paging space)的分配和使用:
lsps -a


關於卷組和邏輯卷

建立卷組:
mkvg -y name_of_volume_group -s partition_size list_of_hard_disks
partition_size單位是MB,它是1到1024之間的一個數。(2的次冪,例如:1, 2, 4, 8, 16, 32等,預設是4MB。)

建立邏輯卷:
mklv -y name_of_logical_volume name_of_volume_group number_of_partition

顯示當前系統的所有卷組:
Lsvg

顯示卷組rootvg的詳細資訊:
lsvg rootvg

顯示屬於rootvg的所有硬碟:
lsvg -p rootvg

如何新增一個硬碟到卷組中:
extendvg Volume_Group_Name hdisk0 hdisk1 ... hdiskn


如何替換一個硬碟:
1. extendvg Volume_Group_Name hdisk_new
2. migratepv hdisk_bad hdisk_new
3. reducevg -d Volume_Group_Name hdisk_bad

如何做一個邏輯卷映象:
1. mklvcopy Logical_Volume_Name Number_of_copies
2. Syncvg Volume_Group_Name


在AIX上,有一個很方便的系統管理命令smit。上面提到的命令中,如邏輯卷操作部分就可以smit輕鬆的完成。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8806316/viewspace-1001437/,如需轉載,請註明出處,否則將追究法律責任。