2012-04-22 17 views
1

ディレクトリを追加して権限を変更するスクリプトを実行しようとしていますが、rootとして実行する方法がわかりません。パスワード。ユーザは必ずしもsudoerであるとは限りません。したがって、sudo -Sコマンドを実行するか、sudoerの設定を変更してパスワードを必要としないようにすることはできません。何か案は?root権限でスクリプトを実行する

+1

スーパーユーザーでより良い回答を得ることができます。 – JavaKungFu

+0

簡単に、既知のセキュリティ違反でブラウザを起動し、ルートアクセス権を得る – CharlesB

答えて

4

須藤さんはあなたの友人です。 、誰もが特定の場所でスクリプトを実行できるようにするためには/ etc/sudoersファイルを設定します。例:

ALL ALL = NOPASSWD: /path/to/my/root/script 
1
グラフィック・ユーザー・インターフェースからスーパーユーザとしてのLinuxスクリプトの実行命令(複数可)の
#!/bin/bash 

#Example(UbuntuのGUIをデスクトップ)所有権にすでに

を行っていない場合は実行可能ファイルには、このスクリプトを指定したファイル

#Changeをrootに変更するだけで、この例の

#These 2つの命令

#Create例

#PopアップボックスのためにUbuntuのログイン時に立ち上げたカスタム起動スクリプトのための便利なルート命令を、#Executingこの具体例

echo "some text" > ./my_file 

用のファイルパスワードを尋ねる

PASSWD= zenity --entry --text "rootパスワードを入力" --hide-text

は#Executeスーパーユーザーとしてアクションは、ファイルをチェックするには、この具体例

#表示ファイルの所有権のためのアクションを#Following

sudo -S su root -c "chown root ./my_file" <<< "$PASSWD"

をrootに属し
printf $'\n'; ls -al ./my_file; printf $'\n' 

#Restore現在のユーザー所有権を再び#Displayファイルの所有権

sudo -S su root -c "chown `whoami` ./my_file" <<< "$PASSWD" 

必要であれば、それは戻って、現在のユーザーに、このターミナルセッションがある場合は、再度パスワードを促すための

printf $'\n'; ls -al ./my_file; printf $'\n' 

#Clearキャッシュに属しているかどうかを確認しますクローズされていません

sudo -k 
関連する問題