Bash でリダイレクトを使用して Sudo を使用するときに「許可が拒否されました」を解決する方法は?


bashコマンドラインudo

sudo を使用してファイルの編集を許可すると、定期的に「権限が拒否されました」というメッセージが表示されます.

たとえば、私のマウスはぎくしゃくして動きが鈍いので、ポーリングを無効にしたいと考えています.

sudo echo "options drm_kms_helper poll=N">/etc/modprobe.d/local.conf



パスワードの入力を求められた後、次のように表示されます.

bash: /etc/modprobe.d/local.conf: Permission denied



そこで、次を使用してポーリングを無効にする一時的な変更を試みました.

sudo echo N> /sys/module/drm_kms_helper/parameters/poll



それでも、システムは次のように応答しました.

bash: /sys/module/drm_kms_helper/parameters/poll: Permission denied



何か案は?

受け入れられた回答



出力リダイレクト (> オペレーター経由) は、echo ではなく、シェルによって行われます. rootとしてログインする必要があります

sudo -i



その後、リダイレクトを使用できます

echo N> /sys/module/drm_kms_helper/parameters/poll



それ以外の場合は、sudo で bash 文字列を実行できます

sudo bash -c "echo N> /sys/module/drm_kms_helper/parameters/poll"



投稿 How to Solve “Permission Denied” When Using Sudo With Redirection in Bash?Stack All Flow に最初に表示されました.