-3

bashが(OSXパケットマネージャー)sudoを実行する許可を求めないようにしようとしています. 私は基本的にこのSOスレッドに従おうとしましたが、それでもエラーが発生しますport commandvisudo

manfredo@cave05:~$ port selfupdate
--->  Updating MacPorts base sources using rsync
Error: Error synchronizing MacPorts sources: command execution failed
Please run `port -v selfupdate' for details.
Error: /opt/local/bin/port: port selfupdate failed: Error synchronizing MacPorts sources: command execution failed

とすれば、同じselfupdateコマンドがスムーズに実行sudoされます。

visudoの次の行があります

# User privilege specification
  root     ALL=(ALL) ALL
  %admin   ALL=(ALL) ALL
  %admin ALL=(ALL) NOPASSWD: /opt/local/bin/port

また、最後の行を次のように置き換えてみました

<user_name> ALL=(ALL) NOPASSWD: /opt/local/bin/port

私は何が欠けていますか?また、誰かがvisudoファイルの最後の行の構文を説明できます。

4

1 に答える 1

1

実際には、次の 2 つのことを達成したいと考えています。

1.sudo portパスワードを入力せずに実行できるようにする。

次の行を に追加することで、すでに解決しています/etc/sudoers

%admin ALL=(ALL) NOPASSWD: /opt/local/bin/port

2.sudo port明示的に入力しなくても実行できるようにするsudo

これは、シェル エイリアスによって実行できます。質問にタグが付けられているのでbash、シェルは bash だと思います。その場合は.bashrc、次の行を変更して追加します。

alias port='sudo port'

新しいシェルを起動すると、動作するはずです。

于 2016-10-24T15:03:40.670 に答える