台本を読んでいます/etc/init.d/sudo
。スクリプトにコメントとして書かれています。特定のユーザーに限定されたスーパーユーザー権限を提供する。
しかし、スクリプトがどのように機能するのか理解できませんか?誰かが私にスクリプトを説明できますか?
私はUbuntu 14.04 32ビットを使用しています。
答え1
initファイルはシステムの起動時に(または要求時に)実行され、主に次の2つのタスクを実行します。
- デーモンプロセスの実行を開始します。
- ファイルのクリーンアップまたは準備、ネットワークパラメータの設定など、さまざまな起動ごとに1回の操作を実行します。
この場合、sudo
initスクリプトはデーモンを起動しません。代わりに、最後にシステムをシャットダウンしたときに残っている可能性のあるキャッシュされた資格情報ファイルをすべて無効にします。touch
これは長い間(1970年1月1日0)に設定された修正時間を使用してこれを行います。
case "$1" in
start)
# make sure privileges don't persist across reboots
if [ -d /var/lib/sudo ]
then
find /var/lib/sudo -exec touch -d @0 '{}' \;
fi
;;
答え2
そこにあるスクリプトを/etc/init.d
使用すると、次のようにサービスを開始および停止できます。システムと同様の初期化システム。特定の形式を持ち、次の操作を実行すると実際に呼び出されます。
service sudo stop
したがって、あなたが言及したスクリプトは、sudo
サービスを開始または停止できるラッパーにすぎません。詳細については、Linux初期化スクリプトをお読みください。