web-dev-qa-db-ja.com

/ sbinディレクトリにifconfigがあるのはなぜですか?

/sbinディレクトリにifconfigコマンドが存在することについて少し心配です。 enter image description here

/sbinディレクトリの主な目的と、そのディレクトリにこれらのコマンドのroot権限がないことを本当に理解していません。

例えば、

xxxx@Jacks:~$ l -l /sbin/ | grep shut
lrwxrwxrwx 1 root root        14 Feb  6 19:00 shutdown -> /bin/systemctl*

shutdownコマンド/ユーティリティは/binディレクトリへのリンクとして表示されますが、これはかなり正常なようです。

/sbinがシステム(ルート)ディレクトリである場合、通常のユーザー(スーパーユーザー権限なし)がifconfigコマンドを実行できるのはなぜですか?

1
J. Doe

システム(ルート)ディレクトリを/ sbinしている場合、通常のユーザー(スーパーユーザー権限なし)がifconfigコマンドを実行できるのはなぜですか?

上記の文は、ifconfigコマンドが見つかったOSの作成者のみが完全に回答できます。しかし、これを共有しましょう。通常はrootユーザーのみが実行する必要があるタスクを実行する必要がある特定のツールがありますが、これらのタスクはすべてのユーザーに必要であるという事実に基づいて、すべての通常のユーザーが実行できるようになっています。例はpasswdツールです。これは私のシステムの/usr/bin/ディレクトリにありますが、ユーザーは通常、その場所でツールを使用するためにSudoを実行する必要がありますが、ここではpasswdだけを使用して自分のパスワードを変更し、自分のパスワードのみを変更できます。したがって、そのツールはだれでも使用できるように設計されていますが、実行すると、ルートであるeffective userの特権と呼ばれるもので実行されます。

これがそのようなツールの背後にある理論です。このように設計されるのは、Ubuntuまたは他のLinux OSの作成者次第です。どのツールもこのように動作するようにできます。この場合はifconfigはこのカテゴリに分類されます。

Simpy put passwdを使用して自分のパスワードを変更するのにrootである必要はありませんが、システムの他のすべてのユーザーのパスワードを変更する必要があります。したがって、Ubuntu開発者はifconfigを使用するためにrootになる必要があると後で決めることができ、それにより、使用またはアクセスの方法が変わります。

そして、その場所に配置されているという事実は、システムがアクセスする必要があるツールであることを意味し、それはそのようなツールの通常の場所です。

1
George Udosen

投稿に定義を投稿したので、/ sbinが何であるかがわかります。 ifconfigが何であるかを調べると、それが/ binではなく/ sbinにある理由がわかります。

リンク: https://manpages.ubuntu.com/manpages/trusty/man8/ifconfig.8.html

説明を読んでください、それは特別な特権、つまりroot特権を必要とする起動時に提供されます(私は間違っているかもしれませんが、これは私の仮定です。私はプログラマーですが、オペレーティングシステムで作業しないので、完全なことを知りません)機能または理由の背後にある理由は何ですか)。

0
khfan213