zoukankan      html  css  js  c++  java
  • 熟悉Linux的用户掌握AIX的快速通道

    Linux,作为新生的操作系统成员,与UNIX有着千丝万缕的关联。近十年来,Linux已深入人心,成为服务器平台领域中的重要一员,很多大型厂商(如IBMHP等)都已对Linux提供了直接的产品支持,例如,在IBM p系列服务器中,可以直接安装(对应的p系列版本)RedhatSuse Linux。很多系统管理员对Linux已有深入了解,本节将参考Reahat Linux,对比LinuxAIX的异同之处,为Linux管理员横向了解和掌握AIX提供一条快捷的通道。

    2.6.1 结构外观上的差异

    简单地说,登录界面就不一样!Linux(以下皆以RHELinux 5RHEL 6为例)和AIX的不同登录界面如图2-22所示。在AIX中,如果没有安装Linux Gnome/Kde 环境,则其登录环境为标准的UNIX CDECommon Desktop Environment)。

     

    2-22 LinuxAIX的不同登录界面

    不过,一旦登录,并且进入到控制台下,我们就会发现RHELAIX 并没有太大的差异。我们在Linux中经常使用的命令(如ls -lpwdvmstatsarsuvitar等)的使用方法与AIX中的基本一致,只是一些命令的选项和参数略有不同而已。下面是一些命令在RHEL 6版本中的执行情况:

    # uname -a

    Linux Server2 2.6.32-71.el6.i686 #1 SMP Wed Sep 1 01:26:34 EDT 2010 i686 i686 i386 GNU/Linux

    #pwd

    /

    #

    #cd /etc

    #

    #ls -l

    total 174

    drwxr-xr-x   2 root   root      4096 Sep 12 18:47 bin

    drwxr-xr-x   4 root   root      1024 Sep 12 00:36 boot

    drwxr-xr-x   3 oracle oinstall 4096 Sep 14 15:58 db

    drwxr-xr-x 11 root   root      3900 Dec 24 19:57 dev

    ..........................................................

    如果在AIX中执行上面命令,过程别无二致。也就是说,无论是AIX,还是Linux,其UNIX自身部分的特征,在很多方面具有极大的相似度。

    当然,不同也是显然的。AIX有自己的命令,Linux也有自己的工具。AIX自有的命令,一般采用“动名词”结构,而Linux则相反——采用“名动词”结构。看下面的例子。

    AIX中,命令lsvg用于列表显示(“ls”)卷组(“vg”),因此lsvg表示列表显示卷组,再如mkvg,用于创建(“mk”)卷组(“vg”),因此mkvg表示创建卷组。

    RHEL中的结构则相反,Linux特有的命令采用“名动词”结构,如vgdisplaylvcreate,分别表示卷组显示(vg + display)和逻辑卷创建(lv + create)。

    另外,RHEL的很多命令和HP-UX是一样的。

    在文件系统的结构中,LinuxAIX采用了几乎同样的目录树结构。在下面的Linux目录结构中,我们可以找到AIX中也有的内容(粗体显示):

    #ls -l

    total 174

    drwxr-xr-x   2 root   root      4096 Sep 12 18:47 bin

    drwxr-xr-x   4 root   root      1024 Sep 12 00:36 boot

    drwxr-xr-x   3 oracle oinstall 4096 Sep 14 15:58 db

    drwxr-xr-x 11 root   root      3900 Dec 24 19:57 dev

    drwxr-xr-x 101 root   root     12288 Dec 24 19:53 etc

    drwxr-xr-x   3 root   root      4096 Sep 12 19:36 home

    drwxr-xr-x 11 root   root      4096 Sep 12 18:46 lib

    drwxr-xr-x   7 root   root     12288 Sep 12 18:46 lib64

    drwx------   2 root   root     16384 Sep 12 00:24 lost+found

    drwxr-xr-x   2 root   root      4096 Dec 24 19:53 media

    drwxr-xr-x   2 root   root         0 Dec 24 19:53 misc

    drwxr-xr-x   2 root   root      4096 Aug 8 2008 mnt

    drwxr-xr-x   2 root   root         0 Dec 24 19:53 net

    drwxr-xr-x   2 root   root      4096 Aug 8 2008 opt

    dr-xr-xr-x 130 root   root         0 Dec 24 19:51 proc

    drwxr-x--- 17 root   root      4096 Dec 24 19:59 root

    drwxr-xr-x   2 root   root     12288 Sep 12 18:47 sbin

    drwxr-xr-x   2 root   root      4096 Sep 12 00:32 selinux

    drwxr-xr-x   2 root   root      4096 Aug 8 2008 srv

    drwxr-xr-x 11 root   root         0 Dec 24 19:51 sys

    drwxr-xr-x   3 root   root      4096 Sep 12 00:39 tftpboot

    drwxrwxrwt 12 root   root      4096 Dec 24 19:59 tmp

    drwxr-xr-x 15 root   root      4096 Sep 12 00:34 usr

    drwxr-xr-x 24 root   root      4096 Sep 12 00:42 var

    其中,二者有如下一些共性:

    •  /usr 存放可执行文件和库文件。
    •  /etc 存放系统参数文件和配置文件。
    •  /dev存放系统逻辑设备文件。
    •  /var存放假脱机文件和日志文件。
    •  /opt存放应用软件。
    •  /proc存放当前系统进程相关信息。
    •  /home存放用户的根目录。
    •  /tmp存放系统临时文件。

    2.6.2 配置工具上的差异

    RHELHP-UX等其他UNIX中,系统的配置信息一般都以文本格式存放,并按照配置文件的方式存储,这既有好处,也存在缺点:简单和易管理是其优点,繁琐和混乱是其缺陷。而在 AIX中,绝大多数系统配置信息存储在一个被称为对象数据库的管理器中,即著名的ODMObject Data Manager)数据库。该数据库存储了AIX服务器大多数的配置信息,包括软件安装信息、设备配置信息、服务器网络配置信息、服务器运行参数等。这些信息不能通过阅读和改写,必须通过AIX的命令操作。当然,这也是既有益处,也有缺点:好处是集中管理,坏处是损坏后难以恢复。

    好在AIX提供了许多中高级命令来修改ODM数据库。这些中高级命令用于操作ODM,与 ODM交互,并且可以完全排除操作错误。但是,ODM不易于理解,很多传统UNIX爱好者仍对此有些看法,他们也许更喜欢传统的配置文件方式。

    为了能更好地管理AIXAIX提供了一个堪称完美的管理工具:SMIT/SMITTY。这个工具可以支持图形环境,也可以支持命令行环境,其工具菜单可以涵盖AIX系统管理的大多数任务,简化了系统管理的难度。

    RHEL中,很多以 system-config- 为前缀的分项管理工具提供了类似SMIT/SMITTY的功能,可以用来协助管理员处理日常管理和配置工作。图2-23所示的即是RHEL中一个工具system-config-date,其图形界面和命令行如图2-24所示。

     

    2-23 system-config-date的图形化界面

     

    图2-24   system-config-date字符界面

    这些以system-config- 为前缀的工具构成了Linux管理工具的主体。这些工具有:

    system-config-soundcardsystem-config-nfssystem-config-securitylevelsystem-config-timesystem-config-languagesystem-config-selinuxsystem-config-datesystem-config-httpdsystem-config-networksystem-config-rootpasswordsystem-config-users等。

    在一般情况下,在AIX中进行系统的管理和配置时使用SMIT的居多,而在RHEL中使用system-config- 类型的工具居多。

    2.6.3 系统与软件的安装

    RHEL的安装比较简单,通常采用光盘介质进行,在安装其间,RHEL的安装助手会提示进行如下配置:

    •  选择日期、时区、语言。
    •  决定磁盘分区设置。
    •  决定文件系统布局。
    •  决定系统安装的各组件。
    •  选择用户身份验证方法。
    •  设置根用户的密码和其他用户。

    AIX中,可供安装的介质有若干可能,如下所示:

    •  网络安装(NIM安装)。
    •  标准的 CD DVD安装。
    •  磁带方式安装(备份磁带)。

    AIX的安装过程中,安装程序会要求:

    •  选择用于安装的语言。
    •  决定用于安装的磁盘。
    •  决定系统安装的各组件。
    •  系统重启后设置root密码、时区、时间、网络等最基本信息。

    由于AIX支持根卷组的镜像等操作,因此在安装完成后,可以使用如下两个命令调整系统的启动模式:

    •  bootlist命令,用来查看和设置AIX系统的引导次序,可启动设备包括CD、磁盘驱动器、网络等。
    •  bosboot命令,用来为启动设备创建引导映像。通常,在对根卷组的磁盘进行镜像操作后,或在系统本身的启动映像被损坏的情况下,可利用此命令重新创建引导镜像。

    如果后续有软件需要安装,例如增减软件、安装程序补丁等,AIXRHEL都可以操作。在AIX中我们可以使用installp命令和原属Linuxrpm命令来安装软件,而在RHEL中,主要使用的是rpm工具。

    但是AIX提供了更加全面的软件管理机制。在AIX安装软件时,管理员可以设定要安装软件的确认状态:是采用提交方式(committed)安装软件,还是采用应用方式(applied)安装软件。如果一个软件已提交,则该软件已经处于确认状态,如果需要反安装,则只能采用删除的方式。如果一个软件处于应用状态,则该软件的原来版本不会从系统中被清除,可以将该软件回退,以保留原来的文件。这个功能为AIX管理员提供更好的安装保护。 RHEL目前尚无这个功能。

    AIX中用于软件安装的若干命令如下:

    •  lslpp,该命令用来查询已经安装了哪些软件。
    •  installp,该命令用来安装AIX组件、提交和删除软件。
    •  inutoc,该命令用于生成内容目录(toc)文件,该文件用于指示installp要安装哪些软件。
    •  rpm,该命令是AIX兼容Linux 的一个工具,用于以Linux 的方式管理软件包。
    •  geninstall,该命令用于处理文件集和RPM 方式的安装,通常SMIT菜单会使用这个内部命令来安装软件。

    2.6.4 磁盘和逻辑卷管理

    RHEL也采用了LVMLogical Volume Manager)方式集中管理存储,其核心概念和AIX LVM是相同的。LVM的要点如下:

    •  可以设定一块盘、一个磁盘分区为一个物理卷(PV),每个 PV又会被划分为物理分区(PP),它由若干个等分的磁盘块构成,卷组一旦创建PP尺寸将保持不变。
    •  若干物理卷(PV)组成卷组(VG),每个卷组(VG)至少要有一个PV,而一个PV只能属于一个 VG
    •  做好卷组后即可创建逻辑卷(LV)。逻辑卷(LV)是指向一组特定 PP的一个集合(table结构),每个指向PP的指针被称为一个逻辑分区(LP)。
    •  在逻辑卷(LV)到卷组(VG)的映射关系中,一个LP最多可以同时指向三个PP,也就是说这个LP上的数据将被保存为三份。
    •  创建完逻辑卷后,即可在逻辑卷(LV)上建立文件系统。

    2.6.5 文件系统上的差异

    AIX 中可以使用两种日志型文件系统:JFSJFS2JFSAIX老版本中的内容,已经过时了,JFS2AIX 5L/6 目前的标准文件系统,可以动态增大和缩小( 对于AIX 5.3以后版本)。 AIX/etc/filesystems文件中定义了各个文件系统的类型,如下所示:

    /:

             dev            = /dev/hd4

             vfs             = jfs2

             log             = /dev/hd8

             mount                = automatic

             check                 = false

             type          = bootfs

             vol             = root

             free           = true

    /home:

    ..................................................

    RHEL中,Ext3Ext4文件系统是大多数管理者所喜欢的。Ext类文件系统和JFS2非常类似,都是日志型文件系统,此文件系统元数据的改变会记载在日志中,并且它在文件系统失败的情况下可用于恢复文件系统。在RHEL默认的安装文件中,/ 文件系统和 /boot文件系统采用了Ext3Ext4的格式,其他的用户自定义文件系统也会采用Ext3Ext4的格式,RHEL5中的文件系统定义如下:

    #cat /etc/fstab

    /dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1

    LABEL=/boot             /boot                   ext3    defaults        1 2

    tmpfs                   /dev/shm                tmpfs   defaults        0 0

    devpts                  /dev/pts                devpts gid=5,mode=620 0 0

    sysfs                   /sys                    sysfs   defaults        0 0

    proc                    /proc                   proc    defaults        0 0

    /dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0

    AIX提供了若干和存储相关的命令,以管理物理卷、卷组、逻辑卷和文件系统。

    •  lspvchpv:这些命令用于列出、修改PV相关属性。
    •  mkvgchvg:这些命令用于创建、修改VG相关属性。
    •  extendvgreducevg:这些命令用于向卷组添加、减少磁盘。
    •  mklvchlvrmlvlslv:这些命令用于创建、修改、删除和查看LV
    •  crfschfsrmfslsfs:这些命令用于创建、修改、删除和列出文件系统。

    2.6.6 用户和组管理差异

    AIX 中,大多数系统配置信息是由ODM数据库管理的,但用户和组的配置信息管理是一个例外。AIX 的用户和组的信息存储在操作系统文件中,这一点和RHELHP-UX等极为类似。当然,配置文件的内容、格式和文件名稍有区别。

    实际上,在目前主流的UNIX中,/etc/passwd /etc/groups 文件都是用来存储用户定义信息的,但是AIX中有一个特殊目录:/etc/security,该目录包含了关于用户的配置信息,比如属性、密码、SHELL限定等。这也和RHEL很类似。

    RHEL中也有/etc/security目录,其作用和AIX/etc/security大致相同,是用于在系统级别设置用户的。其中一个重要文件 limits.conf标识了用户的Shell资源限定。

    # /etc/security/limits.conf

    #

    .............................................

    oracle soft nproc 2047

    oracle hard nproc 16384

    oracle soft nofile 1024

    oracle hard nofile 65536

    sybase soft nproc 2047

    sybase hard nproc 16384

    sybase soft nofile 1024

    sybase hard nofile 65536

    oracle soft nproc 2047

    oracle hard nproc 16384

    oracle soft nofile 1024

    oracle hard nofile 65536

    AIX中,这个文件也有着类似的配置功能。

    # /etc/security/limits

    * Sizes are in multiples of 512 byte blocks, CPU time is in seconds

    * fsize      - soft file size in blocks

    * core       - soft core file size in blocks

    * cpu        - soft per process CPU time limit in seconds

    * data       - soft data segment size in blocks

    * stack      - soft stack segment size in blocks

    * rss        - soft real memory usage in blocks

    * nofiles    - soft file descriptor limit

    .........................................

    oracle:

             fsize = -1

             data = -1

             stack = -1

       rss = -1

    当然,区别也是有的。在AIX中,用户的密码信息存储在/etc/security/passwd中,而在RHEL5中,用户口令一般会存储在/etc/shadow中,Linux的这个特点和HP-UX颇为相像。

    AIX中,和用户与组相关的命令如下所示:

    •  mkuserchuserrmuserlsuser,这些命令用于生成、修改用户,以及删除和查看用户。
    •  mkgroupchgrouprmgrouplsgroup,这些命令用于生成、修改组,以及删除和查看组。

    2.6.7 服务性进程的管理

    AIX的一个基本特征是启用了系统资源控制器SRCSRC,全称System Resource Controller,其守护的进程为srcmstr 进程,该进程的启动在AIX引导过程的第三阶段完成,其启动定义在AIX配置文件 /etc/inittab 中。

    通过AIX SRC,一些有意义的进程组可以以“服务”的形式进行管理,例如NFS服务(网络文件系统服务),其所有相关的进程都可以由SRC管理。下面的命令启动了服务器上的NFS服务。

    #startsrc –g nfs

    下面的命令关闭了服务器上的网络服务。

    #stopsrc –s inetd

    RHEL中,这种服务的概念也深入人心。RHEL中的服务管理工具可以和Windows一样,把系统服务集中起来管理,如图2-25所示。

     

    2-25 RHEL 6中的服务管理工具

    RHEL中的chkconfig 命令可以用来指定某个服务的自动启动状态,而 services 命令则具体执行一个服务的启动和关闭配置,如图2-26所示。

     

    2-26 RHEL 5中的服务管理命令

    对于AIX而言,需要掌握的SRC管理命令如下:

    •  lssrc,该命令用于查看服务、服务组的当前状态。
    •  startsrcstopsrc,该命令用于启动、停止SRC 进程。
    •  telinit,该命令用于指定AIX重新读取/etc/inittab配置文件,重新部署服务的启动状态。

    2.6.8 换页操作管理差异

    RHEL一样,AIX也需要使用虚拟内存作为辅助内存来补充物理内存。RHEL 5采用交换空间的方式实现对物理内存的补充,而AIX则以换页空间的方式实现,这就是它们的差异。

    AIX的换页空间是一种类型为“换页”的特定逻辑卷。之所以是特定的,是因为换页空间的管理并不使用LV的相关命令,而是AIX“特制”的几个换页空间管理命令。图2-27查询了AIX中当前换页空间的配置状态。

     

    2-27 AIX中的换页空间是一种特定的逻辑卷

    RHEL中,交换区既可能是磁盘的一个分区,也可能是一个逻辑卷。例如,下面的RHEL 6系统采用了逻辑卷的形式放置交换区。

    # cat /etc/fstab

    /dev/mapper/vg_laptop2-lv_root /                       ext4    defaults        1 1

    UUID=2433b46a-abe9-4d37-9b11-01f61ab7f2ee /boot        ext4    defaults        1 2

    /dev/mapper/vg_laptop2-lv_swap swap                    swap    defaults       0 0

    tmpfs                   /dev/shm                tmpfs   defaults        0 0

    devpts                  /dev/pts                devpts gid=5,mode=620 0 0

    sysfs                   /sys                    sysfs   defaults        0 0

    proc                    /proc                   proc    defaults        0 0

    无论是RHEL还是AIX,在一般情况下,换页空间的大小都应该和物理内存有一定的比例关系,并可以定义多个换页空间。

    对于AIX而言,需要了解的关于换页空间的命令如下:

    •  mkpschpsrmps,这些命令用于建立、修改和删除换页空间。
    •  lsps,该命令用于查看换页空间。
    •  vmstattopassvmon,这些命令用于查看换页操作的工作压力统计。

    2.6.9 主机故障的鉴别

    在鉴别主机故障时,AIXRHEL基本相似。不同的是,AIX中有一个错误记账进程,专门用于记录主机方面的错误信息。错误记账信息存于一个循环写入的日志中,记录了硬件和软件上发生的错误。同时,AIX提供了一个命令 errpt 来快速扫描错误,深入探查错误信息。

    另外,AIX还提供了一个硬件诊断工具diag,该工具可以用来检查系统硬件,判断错误是临时的错误,还是永久性错误。对于AIX而言,下面的命令用于故障的排除:

    •  errpt,该命令用于显示系统硬件和软件错误。
    •  errlogger,该命令用于在日志中添加某种自定义消息。
    •  errclear,该命令用于从系统中清除以前的错误信息。
    •  diag,该命令用于交互式诊断服务器构件。
    •  snap,该工具用于收集主机信息、系统统计信息。

    Linux中,鉴别主机故障的主要手段是rsyslogd服务,它同样也支持日志的记载、日志信息的记载定义和查看。


    本文节选自《AIX UNIX系统管理、维护与高可用集群建设》第2.6节“熟悉Linux的用户掌握AIX的快速通道”(作者:文平)

    内容简介:

    《AIX UNIX系统管理、维护与高可用集群建设》共13章:第1章探讨了系统架构中的系统工程观点;第2章全面介绍了AIX系统的系统结构,让读者能在宏观上建立对AIX的整体认识,在微观上了解AIX的技术要素;第3章讲解了AIX系统的安装、配置、软件包的使用和维护、克隆盘的创建、网络的设置和管理、以及用户权限的管理,目的是帮助读者搭建一个AIX系统;第4章系统讲解了AIX 设备的的管理和维护,以及系统硬件问题的诊断;第5章从系统使用的角度讲述了AIX的引导过程、引导模式、服务的管理和设置、任务计划的部署、运维中日志的查看等内容;第6章讲解了AIX的存储管理,包括存储管理的层次结构、相互调用关系、存储结构的工程实现等;第7章讲解了文件系统的创建、设置和管理,以及存储部署的最佳实践;第8章重点讨论了AIX系统的备份与恢复的策略和方法;第9~13章专注于AIX系统的应用和工程实践,第9章讨论了如何在AIX上构建数据服务,并以AIX上最常见的Oracle、DB2、Sybase数据库系统为例详细讲解了将AIX部署为数据服务器的过程和方法;第10章探讨了AIX应用服务的效率问题,着重讨论了AIX系统的优化,涉及系统优化中的指标分析、问题定位、调优策略等一系列问题,目的在于帮助读者构建一个整体优化的AIX系统。第11~13章讲解了高可用集群的构建和管理,不仅深入讨论了AIX中使用的PowerHA和GPFS这两种集群的构架,而且还详细分析了集群中的存储问题、拓扑结构问题,以及高可用资源定义和集群共享文件系统等问题,这3章的目的是要帮助读者构建一个具有高可用性的集群系统!

    作者简介:

    文平,原名侯文平,在大型数据库系统和UNIX/Linux平台领域的一线奋斗了近20年。他是一位资深的数据库专家,在Oracle、DB2、Sybase等大型数据库系统的原理、应用、架构、设计、分析、性能优化等方面积累了大量宝贵的经验;他是一位资深的UNIX/Linux系统专家,精通AIX、HP-UX、Solaris 和SCO等UNIX系统以及主流Linux系统的架构、部署、管理、运维及性能优化;他是一位资深的系统架构师,不仅对数据库系统和UNIX/Linux系统的架构和设计有十分深入的研究,而且还极为擅长大型软件项目的架构和设计。他还是一位资深的技术顾问和培训师,长年为中石油、中海油等诸多超大型企业提供数据库和UNIX/Linux系统方面的技术咨询与培训支持,同时他还是国内各主要相关培训机构的特聘讲师。他在业界也颇具影响力,多次受邀在国内著名的数据库技术大会和系统架构师大会上发表重要的主题演讲,深受欢迎。 

  • 相关阅读:
    前端开发 vue,angular,react框架对比1
    前端开发 Angular
    前端开发 Vue Vue.js和Node.js的关系
    net技术
    net技术方案
    软件工程项目费用计算
    前端开发 Vue -4promise解读2
    前端开发 Vue -4promise解读1
    mybatis与hibernate区别
    struts2和springmvc的区别
  • 原文地址:https://www.cnblogs.com/hzbook/p/2258989.html
Copyright © 2011-2022 走看看