Red Hat Linux でパッケージを更新するにはどうすればよいですか?

Red Hat Linux でパッケージを更新するにはどうすればよいですか?

現在受けているコンピュータサイエンスの授業では、C 言語でプログラミングをしています。Red Hat Linux を実行している学校のサーバーに ssh で接続すると、コンパイラとデバッガーが Mac のものと比べて古くなっています (たとえば、clang学校のサーバーでは認識されません)。

最新の環境を調べて入手するにはどうすればいいですか? それは単にユーザーの好みによるものなのでしょうか?

答え1

clangいいえ、それは単なるユーザーの好みではありません。パッケージ管理ツール YUM を使用して、提供されているパッケージがあるかどうかを確認できます。

$ yum search clang
Loaded plugins: auto-update-debuginfo, changelog, langpacks, refresh-packagekit
=============================== N/S matched: clang ============================
clang-devel.i686 : Header files for clang
clang-devel.x86_64 : Header files for clang
clang-doc.noarch : Documentation for Clang
csmock-plugin-clang.noarch : csmock plug-in providing the support for Clang
clang.i686 : A C language family front-end for LLVM
clang.x86_64 : A C language family front-end for LLVM
clang-analyzer.x86_64 : A source code analysis framework
clang-analyzer.noarch : A source code analysis framework
csclng.x86_64 : A compiler wrapper that runs Clang in background

  Name and summary matches only, use "search all" for everything.

上記の出力から、文字列「clang」を含む利用可能なパッケージがいくつかあることがわかります。

パッケージがclangすでにインストールされていて、バージョンが遅れている場合は、 を使用して、yum check-update clang新しいバージョンが利用可能かどうかを確認できます。

アップデートのインストール

ただし、パッケージがインストールされていないか、バージョンが遅れている場合は、インストールや更新を行うには管理者である必要があります。つまり、システム上で「root」ユーザーになる能力、またはsudo権限を持っている必要があります。

このコマンドsudoは、通常 Unix システムに含まれている機能であり、完全な「root」アクセス権や root ユーザーのパスワードを他のユーザーに付与することなく、管理者機能を他のユーザーに提供することができます。

非ルートとしてインストールする

ソースからコンパイルして、ホーム ディレクトリにさまざまなツールをインストールできます$HOME。コンパイラはclangそのようなツールの 1 つです。これを行う方法の詳細については、次のタイトルの Stack Overflow Q&A で説明されています。Clang をユーザーとしてインストールしますか (ルート権限なし)?さらに、GitHub でホストされている次のタイトルのスクリプトを使用することもできます。インストール-clangclangは、ダウンロード、構成、ディレクトリへのインストールといった面倒な作業もすべて実行してくれます$HOME

答え2

yummanページより:

  • update [package1] [package2] [...]

アップデート

パッケージなしで実行すると、update は現在インストールされているすべてのパッケージを更新します。1 つ以上のパッケージまたはパッケージ glob が指定されている場合、yum はリストされているパッケージのみを更新します。パッケージの更新中、yum はすべての依存関係が満たされていることを確認します。(詳細については、パッケージ名の指定を参照してください) 指定されたパッケージまたは glob が現在インストールされていないパッケージと一致する場合、update はそれらをインストールしません。update は、"install" コマンドと同様に、グループ、ファイル、提供、およびファイルリストに対して動作します。

したがって、実行したいコマンドは次のようになります。

sudo yum update

これは、Red Hat Linux などの RPM ベースのディストリビューションでのみ機能することに注意してください。ただし、システム全体でソフトウェアを更新するにはルート アクセスが必要ですが、学校のシステム管理者がこれを許可していない可能性があります。

関連情報