既存のAIXシステムにコアGNUコマンドを追加するにはどうすればよいですか?

既存のAIXシステムにコアGNUコマンドを追加するにはどうすればよいですか?

別のスレッド(このようなリストをソートする最も簡単な方法は何ですか)ソリューションを提供できるので、システムに「GNU ls」があるかどうかを尋ねました。私たちはGNU lsをインストールしませんでしたが、次のような考えがありました。

  1. 「GNU ls」のようなものをインストールするときは、「ls」だけをインストールしますか、それともUnixコマンドの代替セットを含めますか?

  2. GNU lsはbase-O / S lsコマンドでサポートされているすべてのフラグをサポートしますか?

2番目の問題は、AIXシステムにksh93スクリプトが多く、それらが期待どおりに実行され続けていることを確認したいからです。 GNU lsがインストールされている場合、特定のkshスクリプト(/ opt / GNU / lsなど)の機能が必要な場合は、GNU lsへの完全修飾パスを使用できますか?人々は通常、成熟したシステムでGNUコマンドを追加/使用する方法ですか?

答え1

あなたは作ることができますGNUコアツールソースコードから生成されたls(1)コマンドをPATHの下の別の名前(たとえば)に手動でコピーします/usr/bin/gls

たとえば、最も簡単な手順は次のとおりです。

./configure <configure-options-you-may-want>
make
cp src/ls /usr/bin/gls

答え2

  1. GNUバイナリをインストールした方法によって異なります。最も一般的な方法はマイケル・ペッチェルズのホームページまたはIBMのAIXオープンソースソフトウェアツールボックス。どちらの場合も(他のパッケージでも同じですが、これら2つ以外のパッケージを使用したことはありません)バイナリは/ binにインストールされていないため、システムバイナリ文書を上書きしないでください。この場合、PATH変数を変更して使用するバイナリ(AIXまたはGNU)を選択できます。つまり:
      PATH=/usr/local/gnu/bin # GNU バイナリ
      PATH="$PATH:/bin:/usr/bin" # AIX システムのバイナリファイル
      ルート="$パス:/一部/その他/パス:[...]"
      エクスポートパス

/usr/local/binAIXバイナリの使用(最初のもの)に戻すには、最初の2行(GNUバイナリをインストールする必要がある場所)を逆にします。

パッケージの内容は似ています。使用するパッケージによって異なりますが、私が知っている限り、IBMのGNU-lsを含むパッケージはありません。

  1. 話すのは難しいです。 GNUツールは非常に不安定であり、与えられたルールセットに従うので(例えば、AIXはPOSIXと同じです)今日、実際には明日は間違っている可能性が高く、その逆も同様です。一部のGNUユーティリティはPOSIXルールに従おうとしますが、他のユーティリティはそうではありません。私は、特定のユーティリティに貢献する人の数が変わるにつれて、時間の経過とともにこれらの態度も変わると思います。

関連情報