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"
系统重新启动可能发生在白天,也可能发生在夜晚(可能由于站点停电),若此时能够让系统上运行的服务(应用程序)自动启动,则会非常有利。有时候就是这样!让服务启动可以免除您登录并亲自启动它们的额外任务,这很好。但在某些情况下,我们不希望服务启动。此时,我想到的是一个集群服务环境,可能有不同的服务遍布在几个 IBM® AIX® 主机上,这些服务需要以正确的顺序启动,以便能够正常地工作和集成。在这里,您可能需要手动按顺序启动它们。
启动和关闭方法
为了让服务自动启动,AIX 提供了(类似于其他 UNIX/Linux 操作系统)inittab 文件来实现这一点。您可以从 /etc/inittab 执行以下操作:
- 直接从 inittab 通过发出一个要运行的命令(脚本)来启动服务。
- 使用一个常用脚本,通常表示为 rc.local,从 inittab 调用它,它包含一个或多个要运行的命令(或调用脚本)。
- 使用从 inittab 调用的 rc.run level 目录。
为了在系统关闭时自动关闭某个服务,AIX 提供了:
- /etc/rc.shutdown 脚本。此文件与 rc.local 相反。在这里,放置了系统发出关闭操作时要运行的命令。
在本文中,我不会介绍 rc.runlevel 目录配置,而是打算介绍前面提到的其他进程。
为了将一个条目放进 inittab,您需要使用以下格式:
identifier : runlevel: action: command
其中:
-
identifier
是条目的惟一名称。尽量将其长度保持在 1 到 7 个字符之间。它使条目变得可读。 -
runlevel
是实际的 runlevel 数字,在到达 runlevel 时,将运行此 inittab 条目中所包含的指定命令。 -
action
是达到所需的 runlevel 时对待命令的方式,稍后您可以在这本文找到有关的更多信息。 -
command
是将要运行的实际命令。
每个条目字段用冒号 “:” 分隔。
在将条目添加到 inittab 中时,需要确保:
- 在 inittab 中有没有错别字,如果 inittab 中有错别字,AIX 就会不明白它的含义,因而会进入一个进程循环。然后,init 命令无法正确地读取文件。
- 标识符是绝对惟一的,否则,当重复的标识符第二次出现时,可能无法像预期一样正常运行。
如果从 /etc/rc.shutdown 调用的脚本或命令中有错别字,则存在 “语法或没有发现命令” 问题,请注意,如果使用 shutdown
命令进行调用,则会中止关闭操作。因此,请在从 rc.shutdown 调用脚本之前确保它可以正常工作。
需要了解的一些基本信息 机器已经运行的时间信息 #uptime 01:25PMup236days,3:54, 当前的运行级别: #cat/etc/.init.state 2 上一次 AIX 重启的时间: #who-b systembootFeb1719:13 调整 AIX 的运行级别: #/usr/lib/acct/fwtmp</var/adm/wtmp|greprun-level TueMay2112:24:43BST2013 run-levelh10015000621369135516 TueMay2112:25:16BST2013 run-level210006201231369135516 TueMay2112:25:16BST2013
这是一个注释
在将条目添加到 inittab 中时,一定要记住,以一个冒号 “:” 开头的行是一个注释,因此,init 在读取 inittab 时将会忽略该行的其余部分。不要使用 “#”(井号)符号添加注释。但是,您可以在行的末尾对注释使用井号。
inittab 条目
让我们来看看运行脚本的 inittab 的一个条目。假设我们要运行一个将电子邮件发送给系统管理员的脚本,向系统管理员说明设备在系统启动时是可用的。
inittab 的条目如下所示:
mailout:2:once:/usr/local/bin/mailout > / dev/null 2>&1 #mail users
上面的条目可以概括如下:
-
mailout
:惟一的标识符 -
2
:当系统达到 runlevel 2 时运行此脚本(默认) -
once
:运行脚本,并且不用等待其终止;init 将继续处理 inittab。如果进程失败,init 不会尝试重新运行它。 -
/usr/local/bin/mailout
:要运行的命令的完整路径和脚本名称;请注意,输出被丢弃到 /dev/dull。我们以 “#” 结束描述脚本是做什么的注释。
就完整性而言,以下是有问题的脚本:
!/bin/sh # mailout /usr/sbin/sendmail -t <<mayday From:`hostname` To: rs6admins Subject:`hostname` P-Series is up The AIX `hostname` is now up, please check services. . mayday
在上述示例中,操作部分的属性 once 表示只运行一次,但也有其他可以使用的操作。另外两个常见的操作是:重生(respawn)和等待(wait)。对于重生操作,将会执行相应的命令,但 init 不会等待该命令的完成。如果命令停止,inittab 会重新启动它,让此进程继续。所以,您应该查找一个被重生的命令,该命令几乎在所有时间都在运行。ps-ef 命令输出的 STIME 字段显示了该命令最后一次重生的时间。被重生的典型进程是 tty、cron 和数据库监控应用程序,以及基于网络文件系统(NFS)的实用工具。另一个常用操作是等待。Init 运行命令,并等待命令完成,然后再读取 inittab 文件。使用等待操作的典型进程是网络身份验证应用程序和打印、备份服务,等等。
如果需要启动的进程不是 root 所拥有的,那么只需将 su 命令作为 inittab 中的命令条目的一部分提供即可。下面的示例运行了 /home/ampter/start.sh,但首先会调用 su 命令,因此,进程是由用户 ampter 启动的。请注意,这里使用了包围了部分命令的引号:
amps:2:once:su - ampter "-c /home/ampter/start.sh" > /dev/console 2>&1
在编辑 inittab 文件时,确保在保存文件后检查了您的条目。然后,检查您所做的更改。相信我,没有人愿意搞砸 inittab。如果某人感觉对手动编辑文件没有信心,那么还有挽救的方法。AIX 提供以下实用工具:
-
chitab
:修改退出的 inittab 条目 -
lsitab
:列出 inittab 条目 -
mkitab
:添加一个 inittab 条目 -
rmitab
:删除一个 inittab 条目
停止一个重生的进程
如果您需要停止进程重生(换句话说,可能需要停止它来执行一些维护工作),首先,编辑 inittab 文件并在条目的开始处输入一条注释,这样 init 就不会读取它。下面的示例显示,通过在条目的开始处放置一个冒号,可以让 inittab 忽略该条目。
:fmc:2:respawn:/opt/db2_09_05/bin/db2fmcd #DB2 Fault Monitor Coordinator
接下来,让 init 重新读取 inittab 文件:
teinit q
现在,停止该应用程序。执行所需的任何维护。要从 inittab 重新启动进程,只需删除条目开始处的冒号即可。然后,在命令提示符下,运行下面的命令,让 init 重新读取 inittab 文件:
teinit q
现在,它将被重新启动。
rc.local 绑定
启动应用程序或在启动时运行命令的另一种常见方法是使用 /etc/rc.local 文件。在这里它是一个可执行脚本,从 inittab 文件中被调用。rc.local 文件可以包含一个或多个需要在启动时运行的定制命令。在我看来,此文件应该仅用于一次性或临时的命令执行,而不是服务启动脚本。
允许从 inittab 调用 rc.local 的一个典型条目是:
rcloc:2:wait:/etc/rc.local > /dev/console 2>&1
在上例中,操作部分是等待。也就是说,init 要等到所有的命令都被执行,然后再继续读取 inittab 文件。我使用 rc.local 文件执行临时或定制命令(如禁用分页空间或断开网络接口),因此没有提供服务的完整启动脚本。这些命令将会在我的 inittab 文件中。
关闭服务
当您发出一个 shutdown
命令时,会调用 /etc/rc.shutdown 文件,这是一个可执行的脚本。在该文件中,将会放入用于关闭您的定制服务的命令或调用脚本。当我必须关闭 AIX 系统来首次调用 /etc/rc.shutdown 文件本身时,我觉得这是一个很好的实践:
/etc/rc.shutdown
然后,我知道所有的应用程序都已正确关闭,在发出实际的 shutdown
命令之前,该命令无疑会重新运行 rc.shutdown 文件。但是,我不介意这一点。
相关推荐
7. **脚本调度**:如果需要定期自动启动或关闭WebLogic,可以将此脚本添加到系统cron定时任务中,根据需要设定执行时间。 编写这样的脚本需要对AIX系统的shell语法、WebLogic的启动和管理流程有深入理解。通过`...
第 1 楼:AIX系统日常管理 第 2 楼:AIX的版本号代表什么意思? 第 3 楼:AIX资源监控与调制工具 ...第 10 楼:AIX如何自动启动和关闭软件的运行? 第 11 楼:如何查看操作系统中是否安装了某个补丁程序?
集群数据库由于其结构的复杂性,需要管理员掌握集群件(HAC)和数据库(Oracle10GRAC)之间的启动和关闭顺序,以确保集群数据库的稳定运行和业务应用的安全性。 3. 启动和关闭集群数据库的步骤: - 在启动集群...
AIX系统维护大全 Q/A AIX系统维护大全 第 1 楼:AIX系统日常管理 第 2 楼:AIX的版本号代表什么意思?...第 10 楼:AIX如何自动启动和关闭软件的运行? 第 11 楼:如何查看操作系统中是否安装了某个补丁程序? ……
AIX如何自动启动和关闭软件的运行是AIX系统管理员需要了解的重要知识点。管理员可以使用rc.local文件来自动启动和关闭软件的运行。 AIX如何查看操作系统中是否安装了某个补丁程序 AIX如何查看操作系统中是否安装了...
第10楼讨论了如何设置AIX系统自动启动和关闭软件,这通常涉及到启动脚本和运行级别配置。 第11楼介绍了检查补丁程序的命令,如lslpp、installp等,以确保系统安全性和稳定性。 第12楼提到了AIX文件系统的病毒检查...
AIX如何自动启动和关闭软件的运行? AIX实战经验 AIX使用异步I/O(aio)提高系统性能 AIX系统日常管理 AIX中查看用户对系统资源的使用情况 AIX中如何解决不能释放光驱的问题 AIX资源监控与调制工具 AS400安装...
6. **HACMP热备配置**:包括配置卷组、逻辑卷、文件系统,创建应用程序启动关闭脚本,建立集群,配置拓扑和通信,设置service IP,配置应用服务器,定义资源组,验证和同步,最后启动HACMP。 **Oracle在HACMP环境中...
系统启动和关闭涉及启动阶段的管理,如BIST(Built-In Self Test)、POST(Power-On Self Test)以及系统资源控制器SRC,了解这些过程有助于诊断和解决启动问题。ODM(Object Data Manager)管理着系统的对象数据,...
利用`inittab`和`rc.d`脚本可以实现服务的自动启动和关闭,确保系统服务按需运行。 #### 查找已安装补丁 通过`oslevel -r`命令可查看系统当前安装的所有补丁信息。 #### AIX文件系统病毒检测 虽然Unix/Linux系统...
6. **自动启动与关闭软件**: - 使用初始化脚本(如`rc.d`目录下的脚本)配置服务的启动和停止。 7. **补丁管理**: - 查看已安装补丁可通过系统管理命令或IBM提供的工具。 8. **文件系统病毒检查**: - AIX...
在IBM AIX操作系统中,命令行界面是进行系统管理和任务执行的主要工具。AIX命令行提供了丰富的命令集合,用于管理文件、目录、进程、网络、系统配置等各个方面。以下是一些重要的AIX命令及其中文解释: 1. `ls`:列...
通过以上知识点的总结,我们可以看到 IBM AIX 系统管理中涉及到了多个方面,从设备管理到系统启动和维护,再到具体的硬件问题解决方法。这些知识点对于理解 AIX 的工作原理以及处理日常运维中遇到的问题非常有帮助。
这个过程涉及到数据库连接、数据源配置、文件传输、系统环境差异以及脚本自动化等多方面的知识,对于熟悉AIX系统和Cognos操作的管理员来说,这是一个复杂但必要的过程。在实际操作中,还需要考虑网络环境、安全性...
以上仅是AIX命令集的一部分,实际中还有更多高级命令和工具,如awk、sed、bash脚本编程等,它们为系统管理和自动化提供了强大支持。 通过深入学习和实践AIX的操作和命令,不仅可以提升系统管理技能,还能有效提高...
IBM AIX6.1操作系统安装涉及到一系列详细的步骤和准备工作,旨在确保系统能够顺利安装并运行。以下详细介绍了从准备、安装到配置的全过程。 首先,前言部分介绍了文档的编写目的和预期读者。编写目的是为了解决硬件...
- **小型机服务器启动与关闭**:详细说明了如何启动和关闭AIX系统,以及如何在出现问题时安全地关闭系统。 这份手册不仅对HMC的操作进行了详细阐述,还深入介绍了AIX系统的管理和维护,对于IT管理员来说,是一份...
同时,理解如何配置自动启动和关闭软件是维持系统稳定运行的关键。 6. **补丁管理**:使用`lslpp`命令查看已安装的软件包和补丁,`installp`或`smitty installp`用于安装和更新补丁。 7. **安全性和权限**:AIX...
在IT领域,特别是针对企业级高可用性环境,AIX(Advanced Interactive eXecutive)操作系统和IBM的High Availability Cluster Multiprocessing (HACMP)扮演着至关重要的角色。本篇文章将详细阐述AIX 6.1环境下如何...