- blogs:
- cles::blog
2009/02/10
sudoが「sudo: sorry, you must have a tty to run sudo」と文句を言うときは
あるサーバから別のサーバにあるバッチをsshとsudoを組み合わせて使ってキックしようとしたら、sudoが下記のようなメッセージを吐いて実行できませんでした。
sudo: sorry, you must have a tty to run sudo
古いマシンだと同じことをしても怒られないので、最近のRHELやCentOSはsudoの設定が変わってTTYがないとsudoが実行できなくなっているのだろうと予想して、/etc/sudoserをのぞいてみると下記のような行がありました。このDefaults requirettyをコメントアウトすると上記の警告が出ずにじ実行できるようになりました。
/etc/sudoers(一部のみ)
#
# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
# You have to run "ssh -t hostname sudo <cmd>".
#
Defaults requiretty
# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
# You have to run "ssh -t hostname sudo <cmd>".
#
Defaults requiretty
† よりよい解決方法
あまりコメントを読まずに設定を変更してしまったのですが、設定の直上にコメントがあり、これはパスワードが見えてしまうのを防ぐための設定のようなのであまり設定を変更することは好ましくないようです。僕の使っているサーバは、元々パスワード認証は使っていないので特に問題ないと思っているのですが、本筋的にはsshに-tオプションをつけて実行してあげるというのがこの問題への正しい対処方法のようです。sshのmanにも-tをつけると強制的にttyを割り当てるという旨の説明が書かれていました。
man ssh(1)
-t
Force pseudo-tty allocation. This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g., when implementing menu services. Multiple -t options force tty allocation, even if ssh has no local tty.
このエントリは役に立ちましたか?
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→http://blog.cles.jp/item/2919
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
Loading
- sudo: sorry, you must have a tty to run sudo
- sudo: sorry, you must have a tty to run sudo
- ssh sudo
- sudo: sorry, you must have a tty to run sudo
- ssh オプション t
- requiretty
- sudo sorry you must have a tty to run sudo
- sudo: sorry, you must have a tty to run sudo
- you must have a tty to run sudo
- you must have a tty
- sudo: sorry, you must have a tty to run sudo
- sudo: sorry, you must have a tty to run sudo
- sorry you must have a tty to run sudo
- ssh tty
- you must have a tty to run sudo
- 「鋲螺」の読み方 (3)
- NP_DragAndDropUploader v1.2 (2)
- 覚醒の配達で目覚める朝 (2)
- シェルスクリプトで最新のフ... (1)
- 予期しない例外でRubyが落ち... (1)
1 . VMware vCenter Converter で 物理サーバの仮想化をやってみた (19168)
2 . ネットワーク接続時のパスワード保存先 (16817)
3 . JavaScriptでCSVを読み込む (14113)
4 . 「鋲螺」の読み方 (13198)
5 . NHK がネットを使ったラジオ配信を開始してた (13066)
2 . ネットワーク接続時のパスワード保存先 (16817)
3 . JavaScriptでCSVを読み込む (14113)
4 . 「鋲螺」の読み方 (13198)
5 . NHK がネットを使ったラジオ配信を開始してた (13066)
cles::blogについて
Calendar
Referrers