나는 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 노드에 상위 버전을 설치한 후 문제가 해결되었습니다.