私はCent 5.10
ホストにいます。
サービスを開始するためにそのホストでリモートコマンドを実行すると、各サービスは正常に開始されたものとして読み取られます。
kkahn@host: /home/kkahn$ ssh -q -t host.example.com "sudo /etc/init.d/redacted-service start "
Starting service
Service started
Connection to host.example.com closed.
PIDファイルもPIDエントリとして生成されましたが、/var/run
プロセスは開始されませんでした!最後にaを使用してコマンドを実行すると、sleep 10
リモートホストでプロセスが10秒間実行され、コマンドが終了すると停止します。
答え1
動作していないホストと動作しているホスト(Cent6ホストと比較してCent5ホスト)で出力を確認した後、sudo -i
次のことがわかりました。set
[root@cent5-node ~]# set | grep -i sudo
SUDO_COMMAND=/bin/bash
SUDO_GID=100100017
SUDO_UID=100100017
SUDO_USER=kkahn
[root@cent6-node ~]# set | grep -i sudo
SUDO_COMMAND=/bin/bash
SUDO_GID=1001000173
SUDO_UID=1001000173
SUDO_USER=kkahn
[root@testcentsix(testcentsix) ~]#
私のSUDO_GID
合計SUDO_UID
は正しいですcent6-node
- そして短縮存在するcent5-node
! Cent5ではIDが3
削除されました。
これが将来のリリースでパッチされていることがわかりましたsudo
。
https://gratisoft.us/sudo/changes.html
* plugins/sudoers/env.c, plugins/sudoers/ldap.c: Use MAX_UID_T_LEN + 1 for uid/gid buffers, not MAX_UID_T_LEN to prevent potential truncation. Bug #562. [29d9fc4e0c4e]
sudo
このCent5ホストで実行されているバージョンは1.7.2p1
、Cent6ホストで実行されているバージョンはです1.8.6p3
。ソースコードを見ると、1.7.2p1
次のことがわかります。
... char idbuf[MAX_UID_T_LEN]; ...
sudo
Cent5ノードに親バージョンをインストールした後の問題を修正しました。