aix_xlC问题
XL C C++ Enterprise Edition v7.0 for AIX
? ? ?
Configuration file setting Command line compiler options (-q32, -q64, -qarch, -qtune) Source file statements (#pragma options tune=suboption)
Diagnosing Compile time errors
?
-qlanglvl=stdc99
GNU C and G++ Compatibility Automatic parallelization (-qsmp)
?
?
enables automatic parallelization for program loops.
must use thread safe compiler
_ANSI_ is set ? compat366 - Comforms to IBM C & C++ V3.6 (mostly)
? ?
extended - More relaxed than ansi
strict 98 - Same as ansi
Directory Search Sequence for Include Files
32- or 64-bit Compilation?
Compiler evaluates compiler options in the following order, with the last allowable one found determining the compiler mode.
ANSI C compiler, using ANSI C .h
One name for the C++ compiler
aix日常维护问答
具有root权限的用户可执行一条命令,完成特定的任务。如下你可以建立一个用户(shutdown)负责系统的重启动.在AIX 3.2.5中: shutdown:!:0:0::/u/shutdown:/etc/shutdown -Fr在AIX 4: shutdown:!:0:0::/u/shutdown:/usr/sbin/shutdown -Fr
从AIX 5.2开始,/etc/中设置的值不再有效了,取而代之的是/etc/tunables/nextboot文件了。用户如果在系统运行时希望使用no命令修改某个网络参数的值并且在系统重启后仍时该值有效,则需要执行下面的命令:# no -p -o tcp_sendspace=16384该命令执行后,系统会在/etc/tunables/nextboot文件中加入如下内容使系统重新启动后新设置的值仍然有效:no:tcp_sendspace = "16384"
# trace -J fact -A '131266 184494' -P p -a
在AIX中一个hdisk上最多可有多少个PP?
根据所创建的卷组类型的不同,答案也不同。.若创建标准卷组,使用系统缺省值, 在卷组中最多可有32个物理卷, 每个hdisk上最多可有1016个PP,最大的PP尺寸是1GB..若大卷组,使用系统缺省值, 在卷组中最多可有128个物理卷, 每个hdisk上最多可有1016个PP,最大的PP尺寸是1GB..若创建标准或大卷组,在 mkvg 命令中使用 -t 因子, 则每个 hdisk 上的PP数可大于 1016, 但卷组中的物理卷的个数会随之减少。.若操作系统是AIX 5.3 以上的版本,则可创建 Scalable VG ( 可扩展卷组),在卷组中最多可有1024个物理卷,此时虽然每个hdisk上没有PP个数的限制,但整个卷组中最多可有2097152个PP,最大的PP尺寸是128GB!!
aix常见问题处理
怎样在AIX 5.1中建立热后备(hot spare)磁盘?环境 AIX 5.1问题怎样在AIX 5.1中建立热后备(hot spare)磁盘?解答在AIX 5.1中可以在操作系统的级别上建立hot spare磁盘。
如需要在某一卷组(VG)中建立hot spare磁盘,必须满足如下条件:1. 逻辑卷(LV)在此卷组中必须进行镜像(mirror)。
2. 作为hot spare的磁盘上不能有任何的逻辑卷或文件系统。
3. hot spare盘的容量应大于或等于此卷组中最大磁盘的容量。
当满足以上条件后,可采用以下步骤(此处假设卷组名为testvg,磁盘为hdisk6):1. # exptendvg testvg hdisk6将hdisk6加入卷组testvg。
2. # chpv -hy hdisk6将hdisk6标记为hot spare磁盘。
3. #chvg -hy -sy testvg将testvg标记为使用hot spare盘的卷组,并且当发生磁盘失效时自动进行磁盘的替换并同步。
用feprom_update升级 Firmware环境平台: RS/6000问题用feprom_update升级 Firmware解答在AIX 4.3,命令feprom_update会得到报错:1734-009 cannot write in FEPROM一旦得到此提示,表示firmware坏了,系统将无法启动。
此问题可能会在以604e为处理器的SMP系统上(也包括SP高结点)出现。
在升级Firmware之前,应先检查APARIX84560是否已装到系统中。
请从下面网址得到此补丁包:/rs6k/fixes.htmlCHRP Systems系统启动过程的LED E1DC 报错提示环境平台: RS/6000版本: AIX 4.3问题 CHRP Systems系统启动过程的LED E1DC 报错提示解答用比硬盘上安装的AIX版本还低的AIX 安装盘或诊断光盘启动CHRP结构的RS/6000机器,往往会遇到E1DC LED报错提示.确定一个机器是否为CHRP结构,可用如下命令:lslpp -L devices.chrp.base.rte如果devices.chrp.base.rte文件包存在,则是CHRP结构;如果没有此文件存在,此问题不会发生.要防止此问题的办法是打补丁包:APAR IX79693.它包含在AIX 4.3.2和4.3.2 diagnostics CD中(P/N 08L1427 or 08L1430)。
90个AIX疑难问题解析
90个AIX疑难问题解析1.1 1 与inode相关的几个命令环境:(产品AIX,平台pSeries)问题描述: 本文介绍了与inode相关的几个命令,及其使用方法.解答:inode是AIX操作系统中的一种数据结构,它包含了与文件系统中各个文件相关的一些重要信息,例如:> inode 编号> 文件所在设备> 属主的UID> 属主的GID> 文件的大小> 文件的链接数目> 最近一次修改的时间> 最近一次访问的时间> 最近一次更改的时间下面介绍AIX中与inode相关的几个命令:1. df命令- 监视inode的使用当在AIX中创建一个文件系统时,将为inode表分配一定的磁盘空间.每次在文件系统中创建一个文件时,都会为该文件分配一个inode.在df命令的输出中,可以查看各个文件系统中已使用的inode的数目,以及文件系统中总体使用情况百分比:# df -m | head -6Filesystem MB blocks Free %Used Iused %Iused Mounted on /dev/hd4 288.00 77.17 74% 12980 37% //dev/hd2 2528.00 109.54 96% 53299 58% /usr/dev/hd9var 80.00 6.64 92% 4764 70% /var/dev/hd3 464.00 365.88 22% 512 1% /tmp/dev/hd1 16.00 15.50 4% 55 2% /home如果由于某种原因,某个文件系统inode的使用率达到百分之百,那么将无法在该文件系统中创建更多的文件、设备、目录等等。
对于这种情况, 可以通过chfs命令为该文件系统添加更多的空间.2. istat命令- 查看inode信息# istat /etc/hostsInode 568 on device 10/4 FileProtection: rw-rw-r--Owner: 0(root) Group: 0(system)Link count: 1 Length 2204 bytesLast updated: Thu Mar 19 11:27:35 GMT+08:00 2009Last modified: Thu Mar 19 11:27:35 GMT+08:00 2009Last accessed: Mon Mar 30 11:36:27 GMT+08:00 20093. ls命令- 查看目录里各文件的inode编号例如查看/etc目录:# ls -ils /etc | grep host567 4 -rw-r----- 1 root system 1964 Nov 05 18:29 hostmibd.conf568 4 -rw-rw-r-- 1 root system 2204 Mar 19 11:27 hosts667 4 -rw-r--r-- 1 root system 2134 Jan 13 10:15 hosts.bak 569 4 -rw-r--r-- 1 root system 2048 Nov 05 18:29 hosts.equiv 570 4 -rw-rw-r-- 1 root system 1894 Nov 05 18:29 hosts.lpd 1309 4 -rw-r--r-- 1 root system 2493 Jan 13 11:25 hosts.test 869 4 -rw-r--r-- 1 root system 1227 Nov 05 18:29 -6000第一列即为inode编号。
AIX操作系统错误日志及日常维护
A I X操作系统错误日志及日常维护一、系统故障记录(errorlog)errdemon 进程在系统启动时自动运行记录包括硬件软件及其他操作信息故障记录文件为/var/adm/ras/errlog 可备份下来或拷贝到别的机器上分析errpt 命令的使用(普通用户权限也可使用)#errpt |more 列出简短出错信息ERROR_ID TIMESTAMP T C RESOURCE_NAME ERROR_DESCRIPTION192ACror logging turned off038FTIMESTAMP: MMDDHHMMYY (月日时分年T 类型: P 永久; T 临时; U 未知永久性的错误应引起重视C 分类: H 硬件; S 软件; O 用户; U未知#errpt -d H 列出所有硬件出错信息#errpt -d S 列出所有软件出错信息#errpt -aj ERROR_ID 列出详细出错信息# errpt -aj 0502f666 <--- ERROR_ID用大小写均可,例:LABEL: SCSI_ERR1ID: 0502F666Date/Time: Jun 19 22:29:51Sequence Number: 95Node ID: host1Class: HType: PERMResource Name: scsi0Resource Class: adapterResource Type: hscsiLocation: 00-08VPD: <--- Virtal Product DataDevice Driver Level (00)Diagnostic Level (00)Displayable Message.........SCSIEC Level....................C25928FRU Number..................30F8834Manufacturer................IBM97FPart Number.................59F4566Serial Number (00002849)ROS Level and ID (24)Read/Write Register Ptr (0120)DescriptionADAPTER ERRORProbable CausesADAPTER HARDWARE CABLECABLE TERMINATOR DEVICEFailure CausesADAPTERCABLE LOOSE OR DEFECTIVERecommended ActionsPERFORM PROBLEM DETERMINATION PROCEDURESCHECK CABLE AND ITS CONNECTIONSDetail DataSENSE DATA0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000二、控制面板上的LED 代码.8 位代码通常系统故障灯会同时亮起某些机型还会同时显示故障设备位置代码.4 位代码通常是Exxx.3 位代码通常为0yyy 只看后3位.8 位和4位代码可查看系统服务手册 (Service Guide)3 位代码可查看系统诊断手册(Diagnostic Information for Multiple Bus System).闪动的 888, 系统崩溃硬件或软件原因造成按reset 键会显示更多内容888-102 一般为软件故障888-102-207 例外系统会产生一个dump888-102-xxx-0C9 系统正在做dump, 请等待888-102-xxx-0C0 系统dump完成可关电重启888-103 或 105硬件故障一般有 SRN 代码及位置代码三、其他用于收集系统信息的命令lsdev -C 系统设备信息#lsdev -Cc diskhdisk0 Available 00-06-00-2,0 4.5 GB 16 Bit SCSI Disk Drivehdisk1 Available 00-06-00-1,0 4.5 GB 16 Bit SCSI Disk Drivehdisk2 Defined 00-06-00-4,0 16 Bit SCSI Disk Drivelspv 查看物理卷信息#lspvhdisk0 0007821160af3d76 rootvghdisk1 000782117f571294 rootvghdisk2 0000000045c45bde datavglsvg 查看卷组信息#lsvg datavgVOLUME GROUP: datavg VG IDENTIFIER: 0000000055e2458bVG STATE: active PP SIZE: 4 megabyte(s)VG PERMISSION: read/write TOTAL PPs: 2169 (8676 megabytMAX LVs: 256 FREE PPs: 1 (4 megabytes)LVs: 3 USED PPs: 2168 (8672 megabytOPEN LVs: 2 QUORUM: 2TOTAL PVs: 1 VG DESCRIPTORS: 2STALE PVs: 0 STALE PPs: 0ACTIVE PVs: 1 AUTO ON: yesMAX PPs per PV: 2032 MAX PVs: 16#lsvg -l rootvgrootvg:LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINThd5 boot 1 1 1 closed/syncd N/A...lv00 jfs 51 102 1 closed/stale /ibmcxxlv01 jfs 1 1 1 open/syncd /cics_regionslv02 jfs 4 4 1 open/syncd /var/mqmlslpp 查看文件组信息# lslpp -L |grep 23100020....100020.rte 4.3.2.7 C IBM PCI 10/100 Ethernet Adapt看某个文件组是否已安装如以太网卡驱动也用于查询补丁程序的版本lsattr 查看设备参数设置# lsattr -El ent2busio 0x7fffc00 Bus I/O address Falsebusintr 9 Bus interrupt level Falseintr_priority 3 Interrupt priority Falsetx_que_size 512 TRANSMIT queue size Truerx_que_size 256 RECEIVE queue size Truerxbuf_pool_size 384 RECEIVE buffer pool size Truemedia_speed 10_Half_Duplex Media Speed Trueuse_alt_addr no Enable ALTERNATE ETHERNET address Truealt_addr 0x000000000000 ALTERNATE ETHERNET address Trueip_gap 96 Inter-Packet Gap Truelscfg 查看VPD信息Virtual Product Data)# lscfg -vl ssa1DEVICE LOCATION DESCRIPTIONssa1 30-68 IBM SSA Enhanced RAID Adapter(14104500)Part Number.................097H0645FRU Number..................097H0645 <-- 备件号Serial Number...............C8217227EC Level....................0000F20825 Manufacturer................IBM053ROS Level and ID............7201 <-- 微码版本Loadable Microcode Level (04)Device Driver Level (00)Displayable Message.........SSA-ADAPTERDevice Specific.(Z0)........DRAM=032Device Specific.(Z1)........CACHE=0Device Specific.(Z2)........000000062955dab2Device Specific.(YL)........P2-I7 <-- 槽号不同的硬件设备有不同的VPD 所含的格式和信息都不一样通常备件号和微码版本最有参考价值注FRU(Field Replace Unit)才是真正的备件号。
aix_xlC问题
Hello,Good day all.Could someone this group help me out in fixing my problem? When I triedto run my application it is giving me the following error...exec(): 0509-036 Cannot load program ./sssu_aix because of thefollowing errors:0509-130 Symbol resolution failed for sssu_aix because:0509-136 Symbol _Getctype__FPCc (number 101) is not exportedfromdependent module /usr/lib/libC.a(ansi_32.o).0509-136 Symbol _Getnumpunct__FPCc (number 105) is notexported fromdependent module /usr/lib/libC.a(ansi_32.o).0509-192 Examine .loader section symbols with the'dump -Tv' command.What could be the possible reason? My application runs on the machinewhere it was compiled. When I tried to execute it on the machine, thatdoes not have compiler installed it is giving me the above said error.Thanks in advancce.~hemIn article <1137404964.542841.124500@>, hem <hemachandra.reddy@> wrote:Quote:Do this on both machines:# lslpp -l xlC.rteI'm guessing you have a lower version of xlC.rte installed on the machine without a compiler installed.You do not need to install a compiler on the other machine; you just need to make sure xlC.rte is at least the same version as the machine you built the application on.Otherwise, you run into issues with potentially different APIs or symbols -- the usual 'backwards compatibility' credo: older -> newer ok; newer -> older not ok.-DanHi Foster,Thanks for your quick reference.I have a different xlC.rte at both the sides. Can I eliminate this dependency without having to install xlC.rte at the customer place. Isit possible to staically link this xlC.rte while linking?Regards,Hem"hem" <hemachandra.reddy@> writes:Quote:You can "solve" the problem by downgrading xlC.rte on your machine to the lowest level you want to support. You should also explicitlystate what minimum level of xlC.rte you *are* supporting.Quote:This is possible, but a) complicated to get right; b) not recommended;c) not supported (AFAIK).Cheers,--In order to understand recursion you must first understand recursion. Remove /-nsp/ for email.Hi Paul,Thanks for your reply. Now I want to uninstall the xlc.rte7.0 and to install xlc.rte6.0 in my machine. Could you help me where can I get the RPM to install it? Also install and uninstall process of xlC as I amquite new to AIX.Regards,hemxlC.rte7.0 is installed when I installvacpp.60.aix50.sep2005.ptf.tar.Z. Can I uninstall only xlC.rte7.0 and install xlC.rte6.0? Does xlC.rte6.0 has any dependency on vacpp?Can you point me the vacpp package having xlC.rte6.0? My machine is installed with AIX5.3.hem schrieb:Quote:vac and vacpp have dependencies on xlC.rte.xlC.rte is redistributable with your apps.The latest levels of VAC6 rely on the VAC7 C++ runtime for AIX5L Quote:intstall xlC.rte and xlC.rte.aix50 from the Sep 05 maintenance packageon you AIX 5.3 box.The version of runtime libs in production should always be equal or newer than on the development machine. Not less.--UliHi Uli,From/support/docview.wss?uid=swg24010550I read that the xlC.rt.aix50 Sep05 patch has xlC.rte.7.0.0.0 andxlC.rte.7.0.0.1 and not the xlC.rte6.0.I tried downloading most of the packages from the above URL. All are having xlC7.0.Could you help me out?Thanks,Reddy。
aix安装xlc
vacpp.msg.zh_CN.cmp.core 10.1.0.0 # Base Level Fileset
vacpp.msg.zh_CN.cmp.tools 10.1.0.0 # Base Level Fileset
vac.man.zh_CN 10.1.0.0 # Base Level Fileset
vac.msg.Ja_JP.C 10.1.0.0 # Base Level Fileset
vac.msg.en_US.C 10.1.0.0 # Base Level Fileset
安装这些包的时候,仍缺少部分系统包
installp -acXYd ./ bos.iconv.ja_JP .JP
再安装之前没有安装成功的系统包
installp -acXYd ./ bos.loc.iso.ja_JP bos.loc.pc.Ja_JP bos.loc.utf.JA_JP
vacpp.man.Zh_CN 10.1.0.0 # Base Level Fileset
vacpp.man.en_US 10.1.0.0 # Base Level Fileset
vacpp.man.ja_JP 10.1.0.0 # Base Level Fileset
of the selected filesets listed above. They are not currently installed
and could not be found on the installation media.
vac.man.Ja_JP 10.1.0.0 # Base Level Fileset
AIX故障诊断及处理PPT教学课件
“problem determination selection”或者在 “task selection list”中选择了“run error log analysis”才将执行错误日志分析
第11页/共19页
Diagnostics -> Current shell
第14页/共19页
21.2.3 在并发模式下诊断硬件设备
使用第2、3种方式进入diag主菜单:
第15页/共19页
21.2.3 在并发序 2.高级诊断程序 3.任务选择 4.资源选择
第16页/共19页
TEMP表示在许多次失败尝试后,错误被修复
第6页/共19页
21.1 错误日志
UNKN表示不能确定这种错误的严重程度
INFO表示记录只是一般消息,不是错误的结果
•CLASS
指出一般的错误源
H 表示硬件设备故障或介质错误
S 表示软件故障
O 指一个操作者的通知性错误
U 表示不能确定错误源
第7页/共19页
第13页/共19页
21.2.3 在并发模式下诊断硬件设备
并发模式诊断有3种方法: 1.对某一个具体设备进行诊断,使用如下命令
#diag –d [resource_name] 2.运行diag命令进入诊断程序主菜单 3.使用smit,选择“problem determiniation”->Hardware
下面列出一些简单方法给系统做常规检查,可以避免系统出 现真正的问题
1. 使用errpt命令检查错误日志,用errpt –a命令检查任何 可疑的详细的错误日志记录
2. 使用df –k命令检查磁盘空间,避免因为文件系统空间 被占满导致的系统崩溃
如何解决AIX的文件系统故障网络服务器-电脑资料
如何解决AIX的文件系统故障网络服务器-电脑资料在进行文件系统维护和管理过程中,会碰到这样一些问题,例如无法安装文件系统或者无法拆卸文件系统,当文件系统的超级块被破坏,而无法正常使用文件系统,如何修复rootvg中的主要文件系统,下面就讨论如何解决一些常见的文件系统问题,。
一、恢复超级块错误在进行文件系统维护和管理过程中,会碰到这样一些问题,例如无法安装文件系统或者无法拆卸文件系统,当文件系统的超级块被破坏,而无法正常使用文件系统,如何修复rootvg中的主要文件系统,下面就讨论如何解决一些常见的文件系统问题。
一、恢复超级块错误有些用户在使用fsck或mount命令时,当见到下面的提示信息时,可能是文件系统的超级块出了问题:<PRE>fsck: Not an AIX3 file systemfsck: Not an AIXV3 file systemfsck: Not an AIX4 file systemfsck: Not an AIXV4 file systemfsck: Not a recognized file system typemount: invalid argument</PRE>例如,当用户安装一个/allenfs文件系统时,出现下面的错误提示:<PRE>#mount /allenfs</PRE>mount: 0506-324 Cannot mount /dev/lv1 on /allenfs: A system call received a parameter that is not valid.修复该文件系统时,出现下面错误提示,并异常终止:<PRE>#fsck /dev/lv1Not a recognized filesystem type. (TER<strong>MI</STRONG>NATED)</p><p> </PRE>要解决这个问题,只能用备份的超级块来恢复主超级块,我们都知道,在文件系统中,1号逻辑块是主超级块,31号逻辑块是备份超级块,因此就把31号逻辑块上的内容写到1号逻辑块上去。
AIX系统的非计算内存最大值设置过大导致Oracle数据库有些不能连接上
错误描述:AIX系统、Oracle数据库以及其监听器都没有做任何的修改,发现连接远程的数据库,有时可以连接上,有时连接不上数据库。
1、连接不上数据库时:回报ORA-12537:TNS连接己关闭2、发现alert_SID.log没有发现错误3、查看$ORACLE_HOME/network/log/listener.log日志错误如下:25-MAY-2010 18:54:26 *(CONNECT_DATA=(SERVICE_NAME=testoms)(CID=(PROGRAM=D:\项目资料\plsqldev\plsqldev.exe)(HOST=89587D60816246E)(USER=Administrator))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.88.22.77)(PORT=4954)) * establish * testoms * 12518TNS-12518: TNS:listener could not hand off client connectionTNS-12547: TNS:lost contactTNS-12560: TNS:protocol adapter errorTNS-00517: Lost contactIBM/AIX RISC System/6000 Error: 32: Broken pipe原因分析:连接数据库,有时可以连接,有时连接不上。
用ping数据库ip -t 发现网络很稳定一般出现上面的ora-12537错误,一般是因为数据库的listener.ora文件没有配置好,导致这样的错误。
但没有改变过该文件,原来连接数据库一直很正常,突然发现有时能连接有时不能连接的现象。
用lsnrct status查看该监听正常。
该库为测试库,尝试了关闭数据库,再启动>shutdown immediate 关闭正常但启动时出现下面的错误SQL> startupCould not load program oracletestoms:Could not load module /usr/lib/libperfstat.a(shr_64.o).Dependent module liblvm.a(shr_64.o) could not be loaded. Could not load module liblvm.a(shr_64.o).System error: Not enough spaceCould not load module oracle.Dependent module /usr/lib/libperfstat.a(shr_64.o) could not be loaded.Could not load module .ORA-12547: TNS:lost contact再次启动的错误又不一样:SQL> startupORA-00443: background process "MMAN" did not start感到这是AIX系统出现的问题,查看下交换空间omstestdb:/> lsps -aPage Space Physical Volume Volume Group Size %Used Active Auto TypeCould not load program /usr/bin/sed:Dependent module libc.a(shr.o) could not be loaded. Could not load module libc.a(shr.o).Could not load program /usr/bin/awk:Dependent module libc.a(shr.o) could not be loaded. Could not load module libc.a(shr.o).0517-041 lsps: Cannot list paging space .提示不能列出交换空间的大小,从这可以知道这是由于AIX的内存耗尽。
AIX常见故障报错及解决方案
AIX 常见故障报错及解决方案大多数情况下,顺着报错顺藤摸瓜很快就能找出原因,但总有例外,有些报错信息或者日志恰恰让我们南辕北辙。
让我们看看这些案例最终是如何处理的……案例1:图省事,搞出来个大麻烦生产中心有几套VIOS环境,正常运行了1-2年,今日发现有2套进行健康性检查,发现执行命令就hang在哪里不动了,又是内存不够用了。
"0403-031 The forkfunction failed. There is not enough memory available."好奇怪,到底内存被谁用了,vios好端端的就这样了。
都这个样子,重启vios分区吧。
重启完,vios顺利登陆,执行健康性检查没啥问题,可是用nmon看了一下内存使用分配了4个G,使用1个多G,慢慢慢慢的就看到内存使用越来越大,不一会4个G就用完了,重启其他vios分区一个样子,连换页空间都用了。
顿时一头雾水。
到底发生了什么呢?生产中心有几套VIOS环境,正常运行了1-2年.突然出现这种问题,首先想到的是变更。
梳理了近期变更操作,近期新部署了PowerVC,VIOS进行了补丁升级。
VIOS2.1升级到VIOS2.2.3.首先,重启vios分区,在内存没有用完前赶紧检查那个进程使用的内存.排名第一的是vio_daemon,观察了一会发现内存一会就被他占用完了第二,元凶找到了,vio_daemon到底是干啥的,问问IBM800吧,IBM回复问我收集一下系统信息。
1.ioslevel2./etc/security/limits的输出反馈后,IBM告诉我,我遇到了bugvios版本和 /etc/security/limits stack = -1完全符合这个bug特征。
其实这个bug是可以避免的,我们大多数实施AIX的时候,很容易顺手把/etc/security/limits.都改成-1,在大多数情况下,没啥问题,但是就是在这个版本下就容易遇到这个问题。
aix安装xlc
aix安装xlc1.安装xlcsmitty installp/storefile_old/xlcxlf/xlc目录下安装所有文件安装XLC时,会报错,提示缺少这些系统包:MISSING REQUISITES: The following filesets are required by one or moreof the selected filesets listed above. They are not currently installedand could not be found on the installation media.bos.adt.libm 5.3.0.60 # Fileset Updatebos.loc.iso.ja_JP 5.3.0.0 # Base Level Filesetbos.loc.pc.Ja_JP 5.3.0.0 # Base Level Filesetbos.loc.utf.EN_US 5.3.0.0 # Base Level Filesetbos.loc.utf.JA_JP 5.3.0.0 # Base Level Fileset接下来,安装缺少的这些系统包installp -acXYd ./ bos.adt.libm bos.loc.iso.ja_JP bos.loc.pc.Ja_JP bos.loc.utf.EN_US bos.loc.utf.JA_JP安装这些包的时候,仍缺少部分系统包installp -acXYd ./ bos.iconv.ja_JP /doc/475748684.html,.JP再安装之前没有安装成功的系统包installp -acXYd ./ bos.loc.iso.ja_JP bos.loc.pc.Ja_JP bos.loc.utf.JA_JP重新安装/storefile_old/xlcxlf/xlc目录下安装所有文件2.安装xlc升级包smitty installp/storefile_old/xlcxlfupdate/xlcupdate目录下安装所有文件安装时会有语言包报错,忽略:MISSING REQUISITES: The following filesets are required by one or moreof the selected filesets listed above. They are not currently installedand could not be found on the installation media.vac.man.Ja_JP 10.1.0.0 # Base Level Filesetvac.man.Zh_CN 10.1.0.0 # Base Level Filesetvac.man.en_US 10.1.0.0 # Base Level Filesetvac.man.ja_JP 10.1.0.0 # Base Level Filesetvac.man.zh_CN 10.1.0.0 # Base Level Filesetvac.msg.Ja_JP.C 10.1.0.0 # Base Level Filesetvac.msg.en_US.C 10.1.0.0 # Base Level Filesetvac.msg.ja_JP.C 10.1.0.0 # Base Level Filesetvac.msg.zh_CN.C 10.1.0.0 # Base Level Filesetvacpp.man.Ja_JP 10.1.0.0 # Base Level Filesetvacpp.man.Zh_CN 10.1.0.0 # Base Level Filesetvacpp.man.en_US 10.1.0.0 # Base Level Filesetvacpp.man.ja_JP 10.1.0.0 # Base Level Filesetvacpp.man.zh_CN 10.1.0.0 # Base Level Filesetvacpp.msg.Ja_JP.cmp.core 10.1.0.0 # Base Level Filesetvacpp.msg.Ja_JP.cmp.tools 10.1.0.0 # Base Level Filesetvacpp.msg.en_US.cmp.core 10.1.0.0 # Base Level Filesetvacpp.msg.en_US.cmp.tools 10.1.0.0 # Base Level Filesetvacpp.msg.ja_JP.cmp.core 10.1.0.0 # Base Level Filesetvacpp.msg.ja_JP.cmp.tools 10.1.0.0 # Base Level Filesetvacpp.msg.zh_CN.cmp.core 10.1.0.0 # Base Level Filesetvacpp.msg.zh_CN.cmp.tools 10.1.0.0 # Base Level Fileset3.验证xlc安装成功lslpp -l |grep vacpp。
有关AIX问题解答
问题 AIX平台上清除MQ队列管理器遗留的共享内存和信号量的方法解答下面列出的是一段用于清除MQSeries上一次遗留的共享内存和信号量的小程序。
通常遇到的状况是当启动队列管理器时失败,返回消息AMQ8041,指明以前的进程依然在使用中。
注意:仅在 AIX上测试通过!.....................................................运行方法:将以下代码拷贝并粘贴到AIX文件中,chmod +x 即可运行。
在运行前必须停掉所有的队列管理器!脚本如下...............................................................#!/bin/kshecho Sempahores :ipcs -sipcs -s > tempfilewhile read line;doecho $line > temp2filemyid=`cut -d' ' -f5 temp2file`myps=`cut -d' ' -f2 temp2file`if [[ $myid = mqm ]] ; thenecho removing $mypsipcrm -s $mypsfidone < tempfileecho Memory :ipcs -mipcs -m > tempfilewhile read line;doecho $line > temp2filemyid=`cut -d' ' -f5 temp2file`myps=`cut -d' ' -f2 temp2file`if [[ $myid = mqm ]] ; thenecho removing $mypsipcrm -m $mypsfi解答在AIX中使用中文有两种途径:第一是在安装AIX时选择中文语言,装好的系统自动显示中文(这种方法不推荐使用,它没有第二种方法使用起来灵活)。
AIX性能问题诊断及调优
在AIX日常运维中,性能问题一直是一个很重要的问题,为了让操作系统能正常平稳高效的运行,便需要一些武功秘籍来进行快速定准并解决问题,本次我们便来讨论一下我们可以用到的武功秘籍。
所谓性能问题,主要几种在CPU、内存、I/O三个大类别,因此我们分类进行讨论。
类别一:CPU检查系统的三把斧头一招便是topas,这个是最常用也是最有效的一招,通过topas的输出可以看到CPU的使用情况。
从topas的输出我们主要关注如下4个指标:那么判定系统忙不忙的一个指标为Idle%,正常情况下,Idle%的值如果低于10%,则这个系统的CPU就需要注意了,此时关注一下是User%高还是Kern%高,如果是User%高,则说明是应用程序占用CPU较多,反之则说明操作系统本身占用CPU较高。
(但是请注意:并不是所有Kern%高都是操作系统本身导致的,也有可能是应用程序调用了系统本身的函数,这样也会把这部分消耗算在Kern%头上)在拍完第一板斧后,我们继续向下分析,拍第二板斧trpof,这个可以理解为精简版的trace,一般情况下执行这个命令对系统负载影响不太大,因此可以用这个工具先粗略看一下相关的进程。
通过tprof可以看出占用CPU排名靠前的进程。
如果root cause还没有找到,那么便使出大招,收trace数据。
在收集trace 数据前请先注意以下原则:①收集trace数据会对当前系统的负载有影响,在CPU已经达到99%时,再收集trace有可能把操作系统搞夯。
②一定要等到问题重现时收集trace,由于trace产生的数据量巨大,因此要收集有效时间段的trace。
如果不确定问题什么时候重现,可以写个判断脚本,收集循环trace。
③用root用户进行trace收集④需要预估trace数据的大小,然后根据预估的空间,在操作系统上找一个空间较大的地方存放数据。
trace数据的大小可以用下列公式算出:预估数据大小=逻辑CPU的个数* 10MB(其中逻辑CPU的个数可以用vmstat | grep -i lcpu命令查看)在执行完上述收集命令后,会生成trace的raw文件。
AIX下C语言介绍
2018/6/22
Aix下C语言介绍
看看程序错在哪里?
ret = RecvMsgCus(&msgHead,msg_area, rcvLen, "COP003" , msgtype); if(ret!=0) { if(rtn==EPTRANS_NO_DATA) { EPLog("cop","全部报文接收完毕"); break; } else ……
2018/6/22
Aix下C语言介绍
看看程序错在哪里? Cop_Wg_SaveTmp.pc
tmp_ic_cgac_base = (TMP_IC_CGAC_BASE *) malloc ( sizeof(TMP_IC_CGAC_BASE) ); if( value_to_tmp_ic_cgac_base( value, tmp_ic_cgac_base ) < 0 ) { err_code = COP_ERR_VALUE; strcpy(err_msg,"表数据错误!"); return; } …… value_to_tmp_ic_cgac_base( char *value, TMP_IC_CGAC_BASE *tmp_ic_cgac_base) { int offset; int count; count = get_count_of_field( value ); if( count < 20 ) { DebugExe1(userlog( "count = %d,The number of value is not correct!", count );); return( -1 ); } offset = 0; tmp_ic_cgac_base->ic_code.len = value_to_str1( value, &offset, tmp_ic_cgac_base->ic_code.arr); tmp_ic_cgac_base->alter_num.len = value_to_str1( value, &offset, tmp_ic_cgac_base->alter_num.arr); tmp_ic_cgac_base->mod_num.len = value_to_str1( value, &offset, tmp_ic_cgac_base->mod_num.arr); tmp_ic_cgac_base->ra_alter_num.len = value_to_str1( value, &offset, tmp_ic_cgac_base->ra_alter_num.arr); tmp_ic_cgac_base->ra_mod_num.len = value_to_str1( value, &offset, tmp_ic_cgac_base->ra_mod_num.arr); tmp_ic_cgac_base->ic_dpt.len = value_to_str1( value, &offset, tmp_ic_cgac_base->ic_dpt.arr); tmp_ic_cgac_base->duty.len = value_to_str1( value, &offset, tmp_ic_cgac_base->duty.arr);
AIX下的C语言编程环境
make将在 个源文件main.c, make将在3个源文件main.c, x1.c, x2.c中的任何一个发生 将在3 x2.c中的任何一个发生 变化之后执行,重新生成目标程序prog 变化之后执行,重新生成目标程序prog
16.2.3 make的宏 make的宏
make的一个主要特性就是它可以定义和使用宏 make的一个主要特性就是它可以定义和使用宏 宏可以简化makefile描述文件的书写 宏可以简化makefile描述文件的书写 宏常用来定义makefile中经常变化的地方, 宏常用来定义makefile中经常变化的地方,可以使对 中经常变化的地方 makefile的管理更加方便 makefile的管理更加方便 make使用的宏可以分成: make使用的宏可以分成: 使用的宏可以分成 自定义的宏 预定义的宏
make的宏 make的宏 (2)
自定义的宏: 自定义的宏: 宏既可以在make命令行中定义,也可以在makefile 宏既可以在make命令行中定义,也可以在makefile 命令行中定义 中定义。一旦定义了宏,就可以在makefile的任何地 中定义。一旦定义了宏,就可以在makefile的任何地 方使用。 方使用。 宏的定义: 宏的定义: macromacro-variable=value 宏的引用: 宏的引用: $(macro$(macro-variable) 或 ${macro-variable} ${macro-
C编译器的调用
AIX上C编译器的使用格式 上 编译器的使用格式 编译器的使用格式:
超实用分享|AIX性能问题诊断及调优秘籍
超实用分享|AIX性能问题诊断及调优秘籍在AIX日常运维中,性能问题一直是一个很重要的问题,为了让操作系统能正常平稳高效的运行,便需要一些武功秘籍来进行快速定准并解决问题,本次我们便来讨论一下我们可以用到的武功秘籍。
所谓性能问题,主要几种在CPU、内存、I/O三个大类别,因此我们分类进行讨论。
类别一: CPU检查系统的三把斧头一招便是topas,这个是最常用也是最有效的一招,通过topas的输出可以看到CPU的使用情况。
从topas的输出我们主要关注如下4个指标:User% :主要是应用程序消耗CPU的百分比Kern% :主要是操作系统本身消耗CPU的百分比Wait% :主要是有I/O问题时,CPU等待I/O的百分比Idle% :那么这个一定是空闲的CPU了那么判定系统忙不忙的一个指标为Idle%,正常情况下,Idle%的值如果低于10%,则这个系统的CPU就需要注意了,此时关注一下是User%高还是Kern%高,如果是User%高,则说明是应用程序占用CPU较多,反之则说明操作系统本身占用CPU较高。
(但是请注意:并不是所有Kern%高都是操作系统本身导致的,也有可能是应用程序调用了系统本身的函数,这样也会把这部分消耗算在Kern%头上) 在拍完第一板斧后,我们继续向下分析,拍第二板斧trpof,这个可以理解为精简版的trace,一般情况下执行这个命令对系统负载影响不太大,因此可以用这个工具先粗略看一下相关的进程。
tprof -skeuj -x sleep 10通过tprof可以看出占用CPU排名靠前的进程。
如果root cause还没有找到,那么便使出大招,收trace数据。
在收集trace数据前请先注意以下原则:①收集trace数据会对当前系统的负载有影响,在CPU已经达到99%时,再收集trace有可能把操作系统搞夯。
②一定要等到问题重现时收集trace,由于trace产生的数据量巨大,因此要收集有效时间段的trace。
AIX系统常见启动问题及解决
AIX系统常见启动问题及解决AIX系统启动问题基本的启动进程和有序关机:基本命令:alog、cfgmgr、last、bootlist、uptime、mpcfg、shutdowna、alog:对系统日志进行读写。
rc.boot通过alog命令把引导信息重定向到/var/adm/ras/bootlog# alog -L 显示定义在alog Database中的logs# alog -o -t 显示启动日志cfgmgr命令:在系统启动阶段,cfgmgr命令配置对使用系统必须的所有设备系统启动包括两个阶段:阶段一: cfgmgr –f 一旦系统启动就不能运行了阶段二: cfgmgr –s ( second boot phase for normal boot ) 阶段三: cfgmgr –p ( second boot phase for service boot )# cfgmgr –i /usr/sys/inst.images 该命令尝试自动安装设备的软件 FOR 新检测到的设备-I 选项指定安装的媒质在哪里在此处有一个seq field ,该field 是一个整数指定了优先权,值越小,优先级越高,0的优先级最低,1的优先级最高# cfgmgr –l scsi0 ( 配置检测到的连接到SCSI0适配卡的设备 ) -如果你想查找root用户什么时候logged on and off from the console# last root console如果你想决定系统上次shutdown是什么时候# last shutdown为了显示一个启动列表# bootlist –m normal –o如果你想改变你的启动列表# bootlist –m normal fd0 hdisk0 cd0注意:加到bootlist的每一个设备必须处于Avalable的状态如果你怀疑你的系统被shutdown或restarted,你可以使用uptime命令去查明,uptime命令显示系统已经运行了多长时间# mpcfg –df To find out what the status is of your diagnostic flags# mpcfg –cf 11 1 如果你想Fast IPL system,你可以改变diagnostic flag的值注意: mpcfg 和 service information相关shutdown-v 或–h Halt the operating system completely-k Avoids shuting down the system-m Bring the system down to maintenance mode-I specifies interactive mode , Display interactive messages to guide the user through the shutdown注意: /etc/rc.shutdown文件由 /usr/sbin/shutdown script调用来关闭在关机的时候想中断的进程,该文件的必须是可执行的才能被正确调用安装媒质有问题的征兆:1、安装时意外挂起2、无法从介质读数据3、意外重起如果安装媒质没有问题的话,在你的系统中两个设备可能共享相同的SCSI地址LED Error CodeLED 201 --- Damaged boot image解决方法:1、访问你的rootvg ( 进入 system maintenance 模式 )2、检查 / 和 /tmp文件系统,看看他们是否已经满了,如果是创建更多的空间3、决定 bootdisk 通过用命令 lslv –m hd54、重新创建 boot image 使用 bosboot –a –d /dev/hdisk05、检查 CHECKSTOP errors in the error log , 如果这样的错误发现的话可能是失败的硬件6、关机重起LED 223-229 --- Invalid boot list1、决定启动磁盘 lslv –mhd52、创建新的bootlist 使用 bootlist命令LED 551,555,and 557 --- Errors Including corrupted file system and corrupted JFS log1、进入维护模式access rootvg before mounting and file system2、fsck –y /dev/hd1fsck –y /dev/hd2fsck –y /dev/hd3fsck –y /dev/hd4fsck –y /dev/hd9var3、再次Format the JFS log/usr/sbin/logform /dev/hd84、使用 lslv –m hd5 去决定 boot disk5、重新创建boot imagebosboot –a –d /dev/hdisk0LED 552,554,and 556 --- Super block corrupted or corrupted customized ODM databaseFsck1、Repeat steps 1 and 2 for LEDs 551 555 and 5572、If fsck inidicates that block 8 is corrupted, the super block for the file system is cororupted and needs to be repaired , Enter the command :Dd count=1 bs=4k skip=31 seek=1 if=/dev/hdn of=/dev/hdn3、rebuild your JFS log by using the command :/usr/sbin/logform /dev/hd84、if this solves the problem, stop here ; otherwise ,continue with step 55、Your ODM database is corrupted ,restart your system and 进入 maintenance mode6、Mount the root and usr file systemMount /dev/hd4 /mntMount /usr7、copy system configuration to a backup directorymkdir /mnt/etc/objrepos /backupcp /mnt/etc/objrepos/Cu* /mnt/etc/objrepos /backupLED 553 --- corrupted /etc/inittab file1、进入系统维护模式2、检查 / /var /tmp 使用 df命令3、检查 /inittab文件4、检查 execution problems /etc/environment/bin/sh/bin/bsh/etc/fscketc/profile/.profile5、shutdown and reboot。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hello,
Good day all.
Could someone this group help me out in fixing my problem? When I tried
to run my application it is giving me the following error...
exec(): 0509-036 Cannot load program ./sssu_aix because of the
following errors:
0509-130 Symbol resolution failed for sssu_aix because:
0509-136 Symbol _Getctype__FPCc (number 101) is not exported
from
dependent module /usr/lib/libC.a(ansi_32.o).
0509-136 Symbol _Getnumpunct__FPCc (number 105) is not
exported from
dependent module /usr/lib/libC.a(ansi_32.o).
0509-192 Examine .loader section symbols with the
'dump -Tv' command.
What could be the possible reason? My application runs on the machine
where it was compiled. When I tried to execute it on the machine, that
does not have compiler installed it is giving me the above said error.
Thanks in advancce.
~hem
In article <1137404964.542841.124500@>, hem <hemachandra.reddy@> wrote:
Quote:
Do this on both machines:
# lslpp -l xlC.rte
I'm guessing you have a lower version of xlC.rte installed on the machine without a compiler installed.
You do not need to install a compiler on the other machine; you just need to make sure xlC.rte is at least the same version as the machine you built the application on.
Otherwise, you run into issues with potentially different APIs or symbols -- the usual 'backwards compatibility' credo: older -> newer ok; newer -> older not ok.
-Dan
Hi Foster,
Thanks for your quick reference.
I have a different xlC.rte at both the sides. Can I eliminate this dependency without having to install xlC.rte at the customer place. Is
it possible to staically link this xlC.rte while linking?
Regards,
Hem
"hem" <hemachandra.reddy@> writes:
Quote:
You can "solve" the problem by downgrading xlC.rte on your machine to the lowest level you want to support. You should also explicitly
state what minimum level of xlC.rte you *are* supporting.
Quote:
This is possible, but a) complicated to get right; b) not recommended;
c) not supported (AFAIK).
Cheers,
--
In order to understand recursion you must first understand recursion. Remove /-nsp/ for email.
Hi Paul,
Thanks for your reply. Now I want to uninstall the xlc.rte7.0 and to install xlc.rte6.0 in my machine. Could you help me where can I get the RPM to install it? Also install and uninstall process of xlC as I am
quite new to AIX.
Regards,
hem
xlC.rte7.0 is installed when I install
vacpp.60.aix50.sep2005.ptf.tar.Z. Can I uninstall only xlC.rte7.0 and install xlC.rte6.0? Does xlC.rte6.0 has any dependency on vacpp?
Can you point me the vacpp package having xlC.rte6.0? My machine is installed with AIX5.3.
hem schrieb:
Quote:
vac and vacpp have dependencies on xlC.rte.
xlC.rte is redistributable with your apps.
The latest levels of VAC6 rely on the VAC7 C++ runtime for AIX5L Quote:
intstall xlC.rte and xlC.rte.aix50 from the Sep 05 maintenance package
on you AIX 5.3 box.
The version of runtime libs in production should always be equal or newer than on the development machine. Not less.
--
Uli
Hi Uli,
From
/support/docview.wss?uid=swg24010550
I read that the xlC.rt.aix50 Sep05 patch has xlC.rte.7.0.0.0 and
xlC.rte.7.0.0.1 and not the xlC.rte6.0.
I tried downloading most of the packages from the above URL. All are having xlC7.0.
Could you help me out?
Thanks,
Reddy。