最近我的公司正在将一个应用程序系统从大型机 z/OS 迁移到 AIX。我在 Ubuntu 上有一些经验,但对 AIX 6.1 完全陌生。只是想知道几个问题:
- 我们使用putty来连接AIX服务器,但是putty操作起来非常困难。您不能使用向上箭头来调用历史记录中的命令。 AIX 中是否有更好、更用户友好的终端?
- AIX 使用 ksh,而不是 Bash。有没有一个有特殊名称的登录shell,每次登录时它都会自动执行,就像
.bashrc
ubuntu中的那样? - 我的 AIX 上没有 gedit、nano 或 vim,只有 vi。是否有任何文本编辑器可以在没有 root 权限的情况下下载/使用?
答案1
AIX 的默认登录 shell 不是 bash - 它是 ksh/posix。 “向上”箭头不起作用的原因是 KSH 设置为“vi”模式(bash 也可以执行此操作)。你想要“emacs”模式:
set -o emacs
.bashrc 的等价物是 .profile。您可以将上述内容放在那里以永久更改它。 AIX 实际上提供了两个版本的 KSH - ksh88(默认)和 ksh93。后者也支持 .kshrc
您还可以使用公共存储库之一提供的 RPM 在 AIX 上安装 bash(以及 vim、nano 等)。
答案2
我相信这三个问题都可以通过访问IBM工具箱并安装yum
.从那里您可以获得 IBM 提供的 RPM(编译的开源包)的范围,或者此外,佩尔兹它提供了更大的范围。注意佩尔兹是一个与IBM完全无关的项目。
另外,要安装yum
您需要的 RPM yum
。但人们发现这对用户来说不太友好,所以百胜自述文件解释了两种安装方法yum
。您可以手动安装所有 RPM(它列出了所有 RPM),也可以下载完整的捆绑包并安装它们。
以及问题:
我们使用putty来连接AIX服务器,但是putty操作起来非常困难。您不能使用向上箭头来调用历史记录中的命令。 AIX 中是否有更好、更用户友好的终端?
您可以使用 PuTTY 的配置参数来在不同类型的箭头编码之间进行切换。如果我没记错的话(很长一段时间没有使用 PuTTY),默认值是“Linux”,它用<ESC>[[
.如果我没记错的话,我需要更改该配置以使用 PuTTY 直接连接到 AIX 机器。
AIX 使用 ksh,而不是 Bash。有没有一个具有特殊名称的登录shell,每次登录时它都会自动执行,就像ubuntu中的.bashrc一样?
bash
.profile
也用于登录 shell。通过 PuTTY 连接时,您使用的是登录 shell。因此安装(和使用)bash
(通过佩尔兹,见上文)而不是ksh
是一个选项。 ksh
符合 POSIX 标准,但缺乏人们习惯的一些功能bash
。
我的 AIX 上没有 gedit、nano 或 vim,只有 vi。是否有任何文本编辑器可以在没有 root 权限的情况下下载/使用?
再次佩尔兹,有一个nano
包,一个vim
包。
额外注意事项(免责声明)
如果您在生产中使用 AIX 机器,并且实际上在 IBM 上进行维护,那么使用“perlz*”包可能会违反与 IBM 签订的合同。请检查一下,IBM 并不以对合同条款宽松而闻名。
解决这个问题的一种方法(至少我们在使用 AIX 时是如何解决这个问题的)是安装佩尔兹包在开发服务器上,但不在生产服务器上。我们需要自己维护开发服务器。在这种情况下(如果您安装了)请记住在脚本中bash
使用#!/bin/ksh
and ,以防止生产中出现意外。#!/bin/sh
而且,AIX 6.1 已经很老了。我记得在2009年使用过它。当前版本是7.2,如果你要将服务器切换到新服务器,我认为没有理由使用旧版本。