sudoを使用してログインし、bash Whittailスクリプトを実行します。

sudoを使用してログインし、bash Whittailスクリプトを実行します。

私はWhittailを使用してユーザーがログインした後に自動的に起動したい仮想マシン構成スクリプトを生成しています。問題は、ユーザーがrootになることを望まないが、ホスト名、IPアドレスを変更し、ディレクトリを追加するなどの操作を実行するには、ユーザーがrootになる必要があるためです。スクリプトが実際に操作を実行するには、sudo 権限が必要です。

これまでに私がしたことは、Whittailシェルスクリプトを使用するユーザーを作成することです:

adduser -M -s /scripts/whiptail_config.sh user1

私もuser1次のように追加しましたsudoersvisudo

user1 ALL=(root) NOPASSWD: /scripts/whiptail3_config.sh

/etc/init/tty1.confこのユーザーを自動的にログインするように変更しました。

exec /sbin/getty -8 38400 tty1 -a user1 

これまで、私のwhiptail_config.shシェルスクリプトは起動および強制ログイン後に正常にロードされました。ただし、実際にはsudoアクセスを必要とするスクリプト内のすべてのエントリはエラーとメッセージを生成しますPermission denied...

私がしたいことが可能なことですか?考慮していないが、考慮すべき代替手段はありますか?ありがとうございます!

ベストアンサー1

/scripts/whiptail3_config.shもしなければするasudoの場合、権限がありません。スクリプトの確認ができますUIDそれはその下で実行され、sudos自体を実行します。

それはまるで

#!/bin/bash
[ $UID != 0 ] && exec sudo $0 "$@"
# the rest of the script...

おすすめ記事