Aix系统命令积累

来源:互联网 发布:淘宝信誉评级在哪看 编辑:程序博客网 时间:2024/05/17 02:21
1)、破除镜像


把HDISK0从ROOTVG中不做MIRROW:


#unmirrorvg rootvg hdisk0
#reducevg rootvg hdisk0
删除HDISK0


#rmdev –dl hdisk0
在hdisk1上创建boot image  


#bosboot –ad /dev/hdisk0 
export PS1= [\u@\h\W]#






改变启动设备的顺序  dsfsdffdsd


#bootlist –m normal hdisk0 cd0  


shutdown -Fr


加新硬盘重认设备


1.把hdisk1加进rootvg卷组:


#extendvg rootvg hdisk1 


2.关掉rootvg的 QUORUM功能: 


#chvg -Qn rootvg 


3.镜像rootvg


#mirrorvg -c 2 rootvg hdisk1 


4.重新生成 boot image


#bosboot -ad /dev/hdisk1 


5.更新bootlist


#bootlist -m normal hdisk0 hdisk1 cd0 


6.重起系统


#shutdown -Fr


                                                        [Entry Fields]
* INPUT device / directory for software               /
* SOFTWARE to install                                [bash-4.2-1.aix6.1.ppc.rpm]                                                                                                +
  PREVIEW only? (install operation will NOT occur)    no                                                                                                          +
  COMMIT software updates?                            no                                                                                                         +
                                                                                                       +
  ACCEPT new license agreements?                      yes                                                                                                          +
                                                                                                         +
 useradd -g dba -G dba  -d  '/dbora/u1'  -s '/usr/bin/bash'  u1
useradd -g dba -G dba    -d  /dbora/u1  -s '/bin/bash'  -m    u1
修改oracle 用户密码:


1.
首先应保证inetd守护进程是开启的,可输入#lssrc –s inetd查看
如果返回 inetd     tcpip   270468   active
active 表示inetd进程已开启
2.
启动ftp服务: #startsrc -t ftp
3.
停止ftp服务: #stopsrc -t ftp
4.
可输入lssrc -t ftp命令查看ftp进程是否已开启
5.
另请查看/etc/inetd.conf文件的以下字段是否被注释掉,如果被注释掉,说明开机时不自动打开FTP服务


ftp  stream  tcp6  nowait  root  /usr/sbin/ftpd  ftpd
mkgroup -A "id=555" AA


Aix6.1  查看某块磁盘大小(Aix5.2可以
#lspv  hdisk0
# getconf DISK_SIZE /dev/hdisk0 
20480
# getconf DISK_SIZE /dev/hdisk5 
20480
# getconf DISK_SIZE /dev/hdisk4 


Aix5.3  查看某块磁盘大小
$ lscfg -vl hdisk0
  hdisk0           U78A0.001.DNWH2A8-P2-D4  SAS Disk Drive (146800 MB)
$ lsattr -El hdisk0
PCM             PCM/friend/scsiscsd                            Path Control Module           False
algorithm       fail_over                                      Algorithm                     True
dist_err_pcnt   0                                              Distributed Error Percentage  True
dist_tw_width   50                                             Distributed Error Sample Time True
hcheck_interval 0                                              Health Check Interval         True
hcheck_mode     nonactive                                      Health Check Mode             True
max_transfer    0x100000                                       Maximum TRANSFER Size         True
pvid            00c1e7a49db09a970000000000000000               Physical volume identifier    False
queue_depth     16                                             Queue DEPTH                   False
reserve_policy  no_reserve                                     Reserve Policy                True
size_in_mb      146800                                         Size in Megabytes             False
unique_id       2E1135000CCA00D77E5680FHUS153014VLS30003IBMsas Unique device identifier      False
ww_id           5000cca00d77e568                               World Wide Identifier         False


修改系统参数:
# smit     或者   smit  system   或者 #chgsys  
System Environments
Change / Show Characteristics of Operating System 


[TOP]                                                   [Entry Fields]
  System ID                                           0X800006DC6E300000
  Partition ID                                        0X800006DC6E300002
  Maximum number of PROCESSES allowed per user       [16384]                                                                            +#
  Maximum number of pages in block I/O BUFFER CACHE  [20]                                                                               +#
  Maximum Kbytes of real memory allowed for MBUFS    [0]                                                                                +#
  Automatically REBOOT OS after a crash               true                                                                              +
  Continuously maintain DISK I/O history              false                                                                             +
  HIGH water mark for pending write I/Os per file    [8193]                                                                             +#
  LOW water mark for pending write I/Os per file     [4096]                                                                             +#
  Amount of usable physical memory in Kbytes          2097152
  State of system keylock at boot time                normal
  Enable full CORE dump                               false                                                                             +
  Use pre-430 style CORE dump                         false                                                                             +
  Pre-520 tuning compatibility mode                   disable                                                                           +
  Maximum login name length at boot time             [9]                                                                                +#
  Stack Execution Disable (SED) Mode                  select                                                                            +
  Enhanced RBAC Mode                                  true                                                                              +
  NFS4 ACL Compatibility Mode                         secure                                                                            +
  ARG/ENV list size in 4K byte blocks                [256]                                                                              +#
  CPU Guard                                           enable                                                                            +
  Processor capacity increment                        0.01
  
  处理方法1:找出(删除)垃圾文件
     # du -sg * |sort –r n |head
     
 检查文件系统的完整性
# umount filesystem_name
# fsck   filesystem_name
# fsck -y filesystem_name


注意:文件系统必须先umount,再做检查和修复,否则可导致未知的后果。


查看卷组信息
lsvg -l vg_name
有没有"stale"状态的逻辑卷。
用syncvg 命令修复。# smitty syncvg
hd4                 jfs        1     2     2    open/stale    /


#lsattr –El inet0


authm         65536              Authentication Methods           True
hostname      qtsms              Host Name                        True
gateway                          Gateway                          True
route         net,,0,172.40.10.1 Route                            True
bootup_option no                 Serial Optical Network Interface True
rout6                            FDDI Network Interface           True


route属性是否有相应的路由信息。格式为:net,,0,172.16.23.81
如果没有缺省路由,执行命令:
#chdev –l inet0 –a route=0,172.16.23.81
其中172.16.23.81为网关
如果缺省路由不正确,则先删除路由,再增加缺省路由:
#chdev –l inet0 –a delroute= net,,0,133.16.23.81
#chdev –l inet0 –a route=0,172.16.23.81


检查dump设置
#sysdumpdev –l 
primary              /dev/hd6
secondary            /dev/sysdumpnull
copy directory       /var/adm/ras
forced copy flag     TRUE
always allow dump    FALSE
dump compression     OFF
若不正确请用下列命令修改:
#sysdumdev –P –p /dev/hd6 –s /dev/sysdumpnull


系统故障记录(errorlog)


errdemon 进程在系统启动时自动运行
记录包括硬件、软件及其他操作信息
故障记录文件为/var/adm/ras/errlog,可备份下来或拷贝到别的机器上分析
errpt 命令的使用(普通用户权限也可使用)




镜像制作:


镜像(rootvg)
lspv, lsvg –l rootvg, lsvg rootvg, lsvg –p rootvg, 
   lslv –m lv_name, lsvg –M rootvg


extendvg –f rootvg hdisk1
chvg –a y –Q n rootvg
mirrorvg –S rootvg hdisk0 hdisk1
bosboot –a –l /dev/hd5 –d /dev/hdisk1
bootlist –m normal hdisk0 hdisk1
syncvg –v rootvg




拆镜像(rootvg)
lsvg –M rootvg ; 检查有效的pv, 确认hdisk1坏
unmirrorvg rootvg hdisk1
bosboot –ad /dev/hdisk0
bootlist –m normal hdisk0 cd0
mkboot –c –d /dev/hdisk1
sysdumpdev –l ; 检查dump所在的lv(缺省hd6)
sysdumpdev –P –p /dev/hd6;
reducevg rootvg hdisk1
rmdev –dl hdisk1
shutdown -Fr




常用操作---HACMP的操作
HACMP的操作
启动:smitty clstart
停止:smitty clstop
启动/停止过程可以查看/tmp/hacmp.out文件:#tail –f /tmp/hacmp.out 
检查Cluster是否运行正常
Cluster进程是否运行:#lssrc –g cluster,至少两个进程,且为active。
IP地址是否获取:#netstat –i,看boot IP是否变为service ip。
VG是否varyon:#lsvg –o
文件系统是否mount:#mount
应用进程是否启动:#ps –ef | grep app_name


HACMP相关日志
/var/hacmp/adm/cluster.log ;
  以事件为单位的纪录


/var/hacmp/log/hacmp.out;
  详细记录


/var/hacmp/adm/history/cluster.mmdd;
  历史纪录


dump的有关设置


估算系统dump的大小,在系统最繁忙时(内存使用最多)
# sysdumpdev -e
0453-041 Estimated dump size in bytes: 53477376 
# lsps -a
Page Space Physical Volume Volume Group Size   %Used Active
paging00   hdisk0          rootvg       480MB      1    yes
hd6        hdisk1          rootvg       544MB      1    yes


当前的设置
#sysdumpdev -l
primary              /dev/hd6 <-- dump的主设备
secondary            /dev/sysdumpnull <-- dump的副设备(放置到不同的硬盘上)
copy directory       /var/adm/ras <-- dump拷贝的目录
forced copy flag     TRUE
always allow dump    TRUE   


hd6应比估算值稍大。




添加硬件删除硬件
lsdev -Cc adapter
rmdev -dl ent0
cfgmgr
lsdev -Cc adapter


配置系统配置参数
smitty chgsys 


查看内存、系统位数、CPU频率
Usage: prtconf [-c] [-k] [-L] [-m] [-s] [-v]
bash-4.2#  prtconf -c   
CPU Type: 64-bit
bash-4.2#  prtconf -k
Kernel Type: 64-bit
bash-4.2#  prtconf -L
LPAR Info: 2 host01
bash-4.2#  prtconf -m
Memory Size: 2048 MB
bash-4.2#  prtconf -s
Processor Clock Speed: 3000 MHz


系统资源控制器
lssrc 
                    -s    后面跟具体某个子系统
startsrc 
 -g    后面跟具体某个子系统组
Stopsrc


refresh 


启动子系统 # startsrc -s qdeamon
停止子系统 # stopsrc -s qdeamon
刷新子系统 # refresh -s qdeamon
显示子系统状态 # lssrc -a
active:对外提供服务
inoperactive:没有对外提供服务;


列出某个子服务的状态
bash-4.2# lssrc -t ftp  
Service       Command                  Description              Status 
 ftp          /usr/sbin/ftpd           ftpd                     active
bash-4.2# lssrc -t   telnet
Service       Command                  Description              Status 
 telnet       /usr/sbin/telnetd        telnetd -a               active
 
很多服务都有各自的配置文件,比如inetd服务的配置文件是/etc/inetd.conf;


控制用户使用crontab的两个文件:


crontab 作业存放在/var/spool/cron/crontabs/$USER
/usrr/spool/cron/crontabs/$USER
控制用户使用crontab的两个文件:
  /var/adm/cron/cron.deny 不允许使用cron的用户


crontab命令:
[root@zydb]/usr/spool/cron/crontabs#pwd
/usr/spool/cron/crontabs
[root@zydb]/usr/spool/cron/crontabs#ls
adm       esaadmin  root      sys       uucp      zyoracle
[root@zydb]/usr/spool/cron/crontabs#more zyoracle
#26 2 9 5 * /zyhome/dmp/imp.sh


/var/adm/cron/cron.deny 
记录不允许使用cron的用户,若这个文件存在,那么除了这个文件里头所列的用户外,其他任何用户都可以使用cron


/var/adm/cron/cron.allow 
记录允许使用cron的用户,若这个文件存在,那么只有这个文件里头所列的用才使用cron,对root也不例外


crontab格式:
分钟    小时   日     月份      星期      命令
0-59     0-23  1-31   1-12      0-6


查看cron表
# crontab –l


删除cron表
# crontab –r
编辑cron表
方法一:
# crontab –e
方法二:
# crontab –l>/tmp/crontmp
# vi /tmp/crontmp
# crontab /tmp/crontmp


skulker 命令(默认是关闭)
skulker 用来删除过时的文件,清理文件系统;通过修改skulker 脚本调整要清除旧文件
比如删除以下文件:
旧的qdir 文件
/var/tmp中的文件
一天以前的*.bak、a.out、core等文件


skulker通常写入root的crontab文件中,由cron 守候进程每日执行一次;
新安装好一个系统后,想要启动skulker,只好修改root的crontab文件。
#more /usr/spool/cron/crontabs/root


#0 3 * * * /usr/sbin/skulker
#45 2 * * 0 /usr/lib/spell/compress
#45 23 * * * ulimit 5000; /usr/lib/smdemon.cleanu > /dev/null
0 11 * * * /usr/bin/errclear -d S,O 30
0 12 * * * /usr/bin/errclear -d H 90


lsattr命令:
-E 选项   显示有效属性
-l 选项     指定逻辑设备名
例如:# lsattr –El proc0
设备的状态:undefineed  defined  Available


1、未定义(Undefined)——系统中未保存设备的有关记录。


2、已定义(Defined)——系统保存了设备的逻辑设备名、连接设备的端口以及其他属性,但是设备还不能使用,并且逻辑设备名不可访问。


3、可用设备(Available)——设备已定义并且已经就绪,能够为系统所用,逻辑设备名允许访问。


1、配置一个已定义的设备:
    # mkdev –l rmt0
       rmt0 Available
2、取消已配置的设备:
    # rmdev –l rmt0
       rmt0 Defined
3、永久性地删除设备
# rmdev –l rmt0 -d
     rmt0 deleted
mkdev
rmdev
lsdev
lsattr
chdev
smit菜单


sysdumpdev 


# sysdumpdev –l //显示当前的dump信息
# sysdumpdev –L //显示以前的dump信息
# sysdumpdev –e //评估当前系统的dump空间
# sysdumpdev -P -p /dev/dumpdev
//永久的修改主dump设备的数据对象
上述命令也可以用smit菜单来完成


增加system dump空间
    # sysdumpdev -e
    Paging space
    # chps
    # sysdump
    # extendlv 


smit  inet 
Change / Show Characteristics of a Network Interface


                                                        [Entry Fields]
  Network Interface Name                              en1
  INTERNET ADDRESS (dotted decimal)                  [10.10.10.10]
  Network MASK (hexadecimal or dotted decimal)       [255.255.255.0]
  Current STATE                                       up                                                                                                            +
  Use Address Resolution Protocol (ARP)?              yes                                                                                                           +
  BROADCAST ADDRESS (dotted decimal)                 []
  Interface Specific Network Options
     ('NULL' will unset the option)
    rfc1323                                          []
    tcp_mssdflt                                      []
    tcp_nodelay                                      []
    tcp_recvspace                                    []
    tcp_sendspace                                    []
  Apply change to DATABASE only                       no 


查看IP
# ifconfig -a
en0: flags=1e080863,480<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),CHAIN>
        inet 192.168.205.110 netmask 0xffffff00 broadcast 192.168.205.255
         tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
en1: flags=1e080863,480<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),CHAIN>
        inet 10.10.10.10 netmask 0xffffff00 broadcast 10.10.10.255
         tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
lo0: flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN>
        inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255
        inet6 ::1%1/0
         tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1
# ifconfig -l
en0 en1 lo0


SMIT:
SMIT:SYSTEM MANAGEMENT INTERFACE TOOL
/smit.log:
   记录所有访问过的菜单和对话窗口所有执行的命令和输出结果,同时也保存SMIT会话期间的错误记录
/smit.script:
   记录由SMIT执行的所有AIX命令的shell程序文件
bash-4.2# ls -l smit* 
-rw-r--r--    1 root     system      1700994 May 08 10:35 smit.log
-rw-r--r--    1 root     system        80400 May 08 10:35 smit.script
-rw-r--r--    1 root     system       122550 May 08 10:35 smit.transaction


#smit dev直接就进入到dev的界面


dev 设备管理            diag 诊断
jfs 定期档案系统管理    lvm 逻辑卷管理
installp 软件安装及维护 nfs NFS管理
spooler 打印队列管理    system 系统管理
tcpip TCP/IP管理        user 用户管理
系统启动过程:ROM初始化/自检引导设备--boot loaded 装载引导块
--Aix kernel 引导块装入内核(配置设备)--初始化服务/etc/init --/etc/inittab


1. Read Only Storage (ROS) Kernel Phase: 开始检测主板(POST),ROS程序加载搜索bootlist,确定引导顺序(bootlist)后,找到后为下一步的load boot image做好准备,一旦boot image被读入内存,系统初始化开始。
2. Base Device Configuration Phase: (通过cfgmgr命令)配置所有设备。
3. System Boot Phase: 将激活逻辑卷,paging启动,mount文件系统,并开始读取/etc/inittab文件初始化系统服务。


#more /etc/inittab 文件格式
id:runlevel:action:command
若你修改了此文件的内容,必须执行如下命令,让init进程重读/etc/inittab配置文件,才能使得修改生效
# telinit q


action 分类:
respawn :如果进程不存在则启动它
wait:启动进程并且等待它启动结束
once:启动进程后若进程停止则不再启动它
sysinit:在试图访问控制台前运行命令
off:不要运行此命令


init 命令每 60 秒重读 /etc/inittab 文件。如果 /etc/inittab 自从 init 命令上次读取它时发生了改变,
/etc/inittab 文件中的新命令在系统启动时执行。




日志管理程序:
/var/adm/ras/bootlog
/var/adm/ras/bosinst.data
/var/adm/ras/errlog


错误记录
所有的AIX错误都记录在一个记录文件中 
显示错误
       errpt
显示详细的错误信息
      errpt -a
最好用more或 pg命令分页显示
清空错误记录信息
#errclear 0
#crontab -l
#more /usr/spool/cron/crontabs/root
0 11 * * * /usr/bin/errclear -d S,O 30
0 12 * * * /usr/bin/errclear -d H 90
即:S,O 类的错误会保留30天,而H的错误会保留90天


bootlist:用来显示并改变一个已经启动过的系统的启动设备的列表


用法:bootlist [-m mode] bootlist -m mode [-r] [-o] [-i]|[[-f file] device1 device2...deviceN]
例:


#bosboot -ad  /dev/hdisk1
#bosboot -a
-d 此标志对于硬盘是可选的,可以直接bosboot -a


# bootlist -m normal hdisk0 hdisk1 cd0
# bootlist -m normal -o    查看启动列表顺序
hdisk0
hdisk1
cd0


hd5是LVM里逻辑卷的概念,里面有boot image
blv全程boot logical volume不是LVM的概念,是一个普适的启动逻辑卷的概念,里面也是boot image。位置与hd5重叠
boot image内容有:AIX的kernel、rc.boot、reduced ODM、一些启动系统的命令
IPL record位置在硬盘的第一扇区,作用是定位BLV,启动时IPL(他是一个程序、固件)读bootlist里指定设备的0扇区,然后通过IPL record定位BLV,用BLV里的内容引导系统,此后IPL就将控制权移交给kernel来完成后面的启动
bosboot是重建BLV,刷新IPL record
要说明的是因为IPL完全没有LVM的概念,所以就没有PP的概念,虽然hd5都是在hdisk的第一个LP上面,但是IPL还是必须依赖IPL record提供的BLV的PSN来找到BLV




svmon -G 查看内存(4k)
set -o vi 调用缓冲区 k,j,x,h,l 向上下翻,Esc
/ect/services 查看端口
/etc/hosts 机器名IP对照表
/etc/inittab 相当于DOS的AUTOEXEC.BAT文件
/etc/filesystems 记录所有的文件系统设置
如何获得内核中的用户和组名称长度限制?(Aix6.1 用户名组名不超8个字符)
# getconf LOGIN_NAME_MAX
8


转包:
tcpdump 


snap:收集系统信息  snap -help


uptime:显示系统已经运行了多久,该命令的输出实际上与w命令输出的第一行一样。
用法:uptime
结果:05:10PM up 6 days, 21:45, 13 users,load average 4.00, 3.00, 0.00
含义:当前时间,运行了多久,在线用户数,平均负载(前5、10、15分钟)


VI:从命令模式进入文本输入模式的命令键
      a. 在光标后插入文本
      A. 在光标所在行的末尾添加
      i. 在光标前插入文本
      I. 在光标所在行的行首插入
      O. 在光标所在行的上一行创建
      o. 在光标的下面重建新行
      x.删除当前光标字符
      X.删除当前光标前一个字符
      dd:删除一行  ndd
      D:删除当前光标及后边字符
      cc:剪切
      yy:复制
      p:粘贴
      do:删至行首(0=零)
     
      向上查找,用/   [要查找的字]
向下查找,用?   [要查找的字]
n 命令将继续同一方向的查找
N 则继续进行反方向的查找


user :
用户键入登录名后,系统将根据文/etc/passwd和/etc/security/passwd
检查用户名及用户口令,删除user时候也的删除相应的行;


用户环境由以下文件来建立
/etc/security/environ
/etc/security/limits      (查看一下)
/etc/security/user
/etc/motd文件的内容和关于上次登录的信息


环境变量设置:
1./etc/environment
2./etc/profile
3.$HOME/.profile
/etc/environment:Establishes base environment sets PATH, TZ, LANG, and NLSPATH
/etc/profile:Shell script run at all logins sets TERM, MAILMSG, and MAIL  
/$HOME/.profile:User's personal file to customize their environment PATH, ENV, PS1 


#查看用户名、ID、home目录
lsuser -c -a id home ALL | sed '/^#.*/d' | tr ':' '\011'  #smit  lsuser


用户属性文件
/etc/passwd                 包含用户的基本属性
u2:!:555:301::/dbora/oracle:/usr/bin/bash
u1:*:209:301::/dbora/u1:/bin/bash
username:pwd:uid:gid:注释:主目录:shell
此外,需要注意的是,如果passwd字段中的第一个字符是“*”的话,那么,就表示该账号被查封了;
系统不允许持有该账号的用户登录。


注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序 
/etc/group                  包含组的基本属性
/etc/security/user          包含用户的扩展属性
/etc/security/limits        包含用户的运行资源限制
/etc/security/lastlog       包含用户最后登陆属性


su 命令带“-” 号表示将用户环境切换到该用户初始登录环境
# su - u2
-bash-4.2$ pwd
/dbora/oracle
-bash-4.2$ exit
logout
# su u2
bash-4.2$ pwd
/
bash-4.2$ 


安全性记录日志:
/var/adm/sulog :记录每次su命令的执行
/etc/utmp 和/var/adm/wtmp
记录用户的成功登录,可用who 命令查看。
# who -a /etc/utmp
/etc/security/failedlogin
记录所有不成功的登陆尝试,如用户名不存在,记录为UNKNOWN项目 ,可用who命令查看
# who -a /etc/security/failedlogin


last命令


查看/var/adm/wtmp(二进制)文件中的登录、退出历史记录。如:


# last         显示所有用户的登录、退出历史记录
# last root    显示root用户登录、退出历史记录
# last reboot  显示系统启动和重启的时间


umask:决定新建文件和目录的缺省许可权


     普通文件               rw-r--r--
     目录                   rwxr-xr-x
/etc/security/user 指定缺省的和个别用户的umask 值


tar命令和gzip、gunzip命令
1.压缩一组文件为tar.gz
    tar –cvf backup.tar  /home
    gzip -q backup.tar
   
2.释放一个后缀为tar.gz的文件
    gunzip backup.tar.gz
    tar -xvf backup.tar
3. compress/uncompress -- 压缩/解压缩
      uncompress backup.tar.Z   
       tar –xvf backup.tar
4. 解开.tgz文件
      gunzip  backup.tgz
5. 压缩和解压缩.bz2的包
      bzip2 和bunzip2


mkcd [ -r directory] -d device [-v vgname ]
mkcd 命令转换拷贝文件,并烧录到光盘中。
将/home目录烧录到光盘中:
#mkcd –r /home –d /dev/cd0
Unix结构:Hardwrae--kernel--shell--application


 Shell的常见种类:


1.Bourne shel-- 程序名为sh,提示符为$
2.C shell    -- 程序名为csh,提示符为%
3.Korn shell –  程序名为ksh,提示符为$
4.另一种常用提示符:# 超级用户(无论何种shell)
用户命令同计算机交互的关系为:  命令进程--->Shell程序--->UNIX内核--->计算机硬件


tee:分叉命令读取标准输入,把命令的输出送往标准输出和一个文件,例如:$ ls | tee ls.save


什么是服务
服务是由系统资源控制器管理的


系统资源控制器
在AIX中,系统资源控制器(System Resource Controller,SRC)用来管理子系统。
SRC拥有若干命令,用来查看(lssrc)、关闭(stopsrc)、启动(startsrc)、刷新子系统(refresh)。
例如,可以使用lssrc-a命令查看当前运行的系统中子系统的活动情况,其中没有进程号的处于未启动状态。
启动子系统 # startsrc -s qdeamon
停止子系统 # stopsrc -s qdeamon
刷新子系统  # refresh -s qdeamon
显示子系统状态    # lssrc -a
列出具体某个子服务的状态  #lssrc -t  telnet   
列出具体某个子系统的状态  # lssrc -s inetd


子系统的启动
/etc/inittab文件
inetd服务的配置文件是/etc/inetd.conf(开机启动服务)


lsdev设备状态
未定义(Undefined)——系统的Predefined库中未必有这个设备的记录
已定义(Defined)——系统已经为设备分配了逻辑设备名和端口,同时保有其属性。设备当前对系统不可用,其对应逻辑设备无法访问
可用设备(Available)——设备已定义并且已经就绪,能够为系统所用,逻辑设备名允许访问


设备配置管理命令总结


cfgmgr/mkdev  向系统中新增设备
rmdev  从系统中删除设备,或使设备处于defined状态
lsdev  列出当前系统中定义的设备
lsattr 用于读取指定设备的配置属性,部分属性可更改
lscfg   用于显示指定设备的类型、序列号和有关供货商的信息.
prtconf  列出AIX上所有配置的信息
chdev   更改设备属性


PV:每块磁盘会被赋予一个32位的称为物理卷标识符(physical volume identifier (PVID))的唯一标识。
这一操作就将一块盘变成了一个物理卷PV
$ lspv hdisk13
PHYSICAL VOLUME:    hdisk13                  VOLUME GROUP:     zydatavg
PV IDENTIFIER:      00c1e7a4250acd53 
# chdev -l hdisk0 -a pv=yes 赋予PVID
清除磁盘PVID:
#chdev -l hdisk0 -a  pv=clear


显示卷组占用的物理卷 
# lsvg -p rootvg
rootvg:
PV_NAME           PV STATE          TOTAL PPs   FREE PPs    FREE DISTRIBUTION
hdisk1            active            542         387         108..44..18..108..109


#lsvg rootvg
# reducevg -d testvg hdisk3
一个VG最大可允许32个PV


卷组描述区:VGDA(Volume Group Descriptor Area)


VGDA是硬盘上的一块区域,位于每个物理卷开始部分的VGDA中,包含了该物理卷所在卷组的所有逻辑卷的物理卷的描述信息.
每个磁盘至少包含一份VGDA,通过读取VGDAs上的时间戳,能确定哪份VGDAs正确反映了卷组的状态。
当在一个VG中添加或删除一个PV时,会相应修改VGDA中的信息
为了确保描述卷组内逻辑卷和物理卷管理数据的完整性,要激活一个卷组,系统要求必须要有足够的可用的VGDA的个数。




做条带化也称做RAID0
条带化把数据块均匀地分布在不同硬盘上
条带化是实现逻辑卷跨盘存储的数据分布技术,使得访问逻辑卷上的连续数据时多个硬盘驱动器并行操作,提高了I/O的吞吐量。
主要目的是提高大文件顺序读写的性能。


镜像mirror也称做RAID1
在建立逻辑卷时,用户可以实现逻辑卷中逻辑分区的镜像,在独立的不同硬盘中保存两个或三个副本(最多只能到三个),
从而保证硬盘出错时数据不受损坏而且是可用的
某个VG中有很多个LV做镜像,用命令mirrorvg 是最快捷的方式同时镜像这些LV


管理逻辑卷 ---删除 LV  rmlv 
如在lv上已建立的文件系统,需先umount 文件系统


删除关闭的逻辑卷lv8,可以删除:
# rmlv lv8
Warning, all data contained on logical volume lv8 will be destroyed.
rmlv: Do you wish to continue? y(es) n(o)? y
rmlv: Logical volume lv8 is removed.
#
删除打开的逻辑卷testlv1,不可以删除,需首先关闭逻辑卷:
# rmlv testlv1
Warning, all data contained on logical volume testlv1 will be destroyed.
rmlv: Do you wish to continue? y(es) n(o)? y
0516-1008 rmlv: Logical volume testlv1 must be closed.  If the logical
        volume contains a filesystem, the umount command will close
        the LV device.
#
关闭逻辑卷testlv1上的文件系统/testfs1,然后删除逻辑卷


给lv6扩展3个分区到磁盘hdisk2 
# extendlv -a ie lv6 3 hdisk2


将rootvg从hdisk1移动到hdisk0上


# lsvg -p rootvg
rootvg:
PV_NAME           PV STATE          TOTAL PPs   FREE PPs    FREE DISTRIBUTION
hdisk1            active            542         387         108..62..00..108..109
hdisk0            active            2167        2167        434..433..433..433..434
#
显示hdisk1和hdisk0的PP映像:
# lspv -M hdisk1
hdisk1:1        hd5:1  
hdisk1:2-109
hdisk1:110      hd6:1  
hdisk1:111      hd6:2  
……
hdisk1:324      hd9var:17  
hdisk1:325      hd9var:18  
hdisk1:326-542
# lspv -M hdisk0
hdisk0:1-2167


从磁盘hdisk1移动数据到hdisk0:
# migratepv hdisk1 hdisk0     #smit  migratepv
0516-1011 migratepv: Logical volume hd5 is labeled as a boot logical volume.
0516-1246 migratepv: If hd5 is the boot logical volume, please run 'chpv -c hdisk1'
        as root user to clear the boot record and avoid a potential boot
        off an old boot image that may reside on the disk from which this
        logical volume is moved/removed.
migratepv: boot logical volume hd5 migrated. Please remember to run
        bosboot, specifying /dev/hdisk0 as the target physical boot device.
        Also, run bootlist command to modify bootlist to include /dev/hdisk0.
#
# lspv -M hdisk1
hdisk1:1-542
# lspv -M hdisk0
hdisk0:1        hd5:1  
hdisk0:2-434
hdisk0:435      hd6:1  
……


hdisk0:988      hd10opt:3  
hdisk0:989      hd10opt:4  
hdisk0:990-2167


如何替换一个硬盘:
extendvg Volume_Group_Name hdisk_new
migratepv hdisk_bad hdisk_new
reducevg -d Volume_Group_Name hdisk_bad 


swap:/etc/swapspaces文件
列出系统重启动时自动激活的换页空间


在已有逻辑卷上创建文件系统 # smitty crjfslv
直接创建文件系统 # smitty crjfs


方法1: 直接 Mount CDROM
# mount -rv cdrfs /dev/cd0 /cdrom    #smit cdrfs
# pwd
/
# cd cdrom
# ls
.Version      README.aix    image.data    root
5300-04       RPMS          installp      usr
OSLEVEL       bosinst.data  ppc
#
-r
            Mounts a file system as a read-only file system, regardless of its
            previous specification in the /etc/filesystems file.
-v   VfsName
            Specifies that the file system is defined by the VfsName parameter
            in the /etc/vfs file.




NFS:Network File System ,网络文件系统
NFS用于UNIX系统时,类似Windows中网上邻居的功能,可实现网络共享。但比网上邻居配置更灵活配置,安全性更好。
基于RPC(Remote Procedure Call)协议


网络文件系统 NFS 的守候进程
NFS服务端需要的守候进程(daemon) :
? portmap
? nfsd
? rpc.mountd
? rpc.statd
? rpc.lockd
查看NFS守候进程状态命令:

网络文件系统 NFS 的守候进程
rpc.mountd 进程
运行在服务端客户端,响应客户端的mount请求发送的mount请求,并查看是否有所需的共享目录


nfsd 进程
运行于服务端,和biod配合完成NFS的文件读写操作


网络文件系统 NFS 的守候进程
biod 进程
运行于客户端,和nfsd配合完成NFS的文件读写操作


rpc.lockd and rpc.statd 进程
客户端和服务端都要运行,用来监控和锁定NFS文件的操作


portmap 进程
用来给基于RPC协议的服务分配一个通讯端口
  基于RPC协议的服务必须先从portmap得到分配的的端口,之后才能对外正常服务
  NFS服务是基于RPC通信,所以无论是客户端还是服务端,都要在启动RPC其他相关子进程之前,先启动pormap进程
  
网络文件系统 配置NFS服务器(只有root才能配置NFS)
手动修改配置文件和手工启动服务
用smit工具配置和启动服务


手动修改配置文件/etc/exports
执行exportfs –a, 使配置文件内容生效
用startsrc –g nfs 启动NFS相关子进程


网络文件系统showmount命令
查看某台机器共享出的目录有哪些
# showmount -e server3
export list for server3:
/tmp/thomasc server1,server2,server4
/tmp/thomasc/testfs (everyone)
查看当前有那些机器共享本机目录
# showmount –a

备份与恢复
为什么要备份
重建数据需要的代价昂贵
可能无法重建


备份的用途:
系统崩溃后恢复,如:硬件故障、安装或修理引起的损坏、错误的删除
在系统间进行数据传送
重新组织文件系统
为提高性能而进行的磁盘重整
用于安装的系统映象备份
升级前后的检查点
长期保存的文档


备份的类型:
系统备份:操作系统的映象备份(rootvg卷组)
完整备份:备份所有用户数据及配置文件
增量备份:记录上次完整备份以来的变化


备份对象:
所有用户数据
所有更新的系统文件
所有更新的应用文件
所有非ROOTVG卷组的数据


非rootvg卷组的备份和恢复
备份非rootvg
# smitty savevg
在命令行执行savevg volume_group_name 
如果用户希望不备份某些文件,则需创建一个/etc/exclude.volume_group_name文件


可以用mirrorvg命令镜像一个卷组内的所有逻辑卷。
 增加磁盘hdisk1
 mirrorvg  rootvg
 bosboot -ad /dev/hdisk1
 bootlist -m normal hdisk0 hdisk1
例:扩展rootvg包含第2块盘hdisk0,用mirrorvg命令创建rootvg内所有LV的拷贝。然后给hdisk0添加启动映像,启动列表增加hdisk0。系统启动,使修改生效。


观察当前磁盘使用情况:
#lspv
# lspv
hdisk0          000b1fbff2d24963                    rootvg          active
hdisk1          000b1fbfb2ea35eb                    rootvg          active
将hdisk0从镜像中取消:
# unmirrorvg rootvg hdisk0
0516-1246 rmlvcopy: If hd5 is the boot logical volume, please run 'chpv -c <diskname>'
        as root user to clear the boot record and avoid a potential boot
        off an old boot image that may reside on the disk from which this
        logical volume is moved/removed.
0516-1132 unmirrorvg: Quorum requirement turned on, reboot system for this
        to take effect for rootvg.
0516-1144 unmirrorvg: rootvg successfully unmirrored, user should perform
        bosboot of system to reinitialize boot records.  Then, user must modify
        bootlist to just include:  hdisk1.


清除hdisk0中的启动记录:
# chpv -c hdisk0
修改启动列表:
# bootlist -m normal hdisk1
# bootlist -m normal -o
hdisk1 blv=hd5












原创粉丝点击