ウェブサイト検索

CentOS/RHEL で「semanage コマンド」が見つからないエラーを修正する方法


semanage コマンドを使用して正しいブール値とセキュリティ コンテキスト値で Samba 共有を構成し、RHEL 8 上のリモート クライアントから Samba 共有へのアクセスを許可するように SELinux ポリシーを変更しようとしています。 >サーバーを起動しましたが、突然以下のエラーが発生しました。

semanage fcontext --at samba_share_t "/finance(/.*)?"

-bash: semanage: command not found

semanage は、SELinux (セキュリティ強化 Linux) 管理ツールであり、ポリシー ソースを調整したり、ポリシー ソースから再構築したりすることなく、特定の要素を構成するために使用されます。 。 Semanage は、Linux ユーザー名から SELinux ユーザー ID へのマッピングで構成され、インターフェイス、ネットワーク ポートなどのさまざまな種類のオブジェクトのセキュリティ コンテキストのマッピングも含まれます。

このエラーを修正する方法を考えていたのですが、 どのパッケージがsemanage コマンドを提供しているのかわかりません。少し調べた結果、/usr/sbin/semanage というクエリされたファイルを提供するパッケージを見つけるには、yum オプションを使用する必要があることがわかりました。

この短い記事では、yum コマンドを使用してsemanage コマンドを取得するために必要なパッケージをインストールする方法を説明します。

yum provides /usr/sbin/semanage

上記のサンプル出力から、semanage コマンドを使用するにはpolicycoreutils-python-utils-2.8-16.1.el8.noarch パッケージをインストールする必要があることがわかります。

yum install policycoreutils-python-utils

インストールが完了したら、 もう一度semanage コマンドを実行してみてください。魔法のように動作します。

次のコマンドを使用してsemanage コマンドのオプションと使用法に関するマニュアル ページを取得することもできます。

man semanage
OR
semanage --help