Sudo는 chroot에서 작동하지 않습니다

Sudo는 chroot에서 작동하지 않습니다

chroot 환경에서 sudo 명령을 사용할 수 있기를 원합니다.

다음과 같이 chroot를 시작합니다.

chroot /debian-squeeze /bin/bash

이제 chroot에 루트로 로그인했습니다. su user라는 사용자로 로그인 할 수 있습니다 user. 이제 sudo작동하지 않습니다.

user@HD:/$ sudo ls
sudo: must be setuid root

일부 진단:

user@HD:/$ which sudo
/usr/bin/sudo

user@HD:/$ ls -al /usr/bin/sudo
-rwsr-xr-x 2 root root 143884 May 23  2012 /usr/bin/sudo

user@HD:/$ ls -aln /usr/bin/sudo
-rwsr-xr-x 2 0 0 143884 May 23  2012 /usr/bin/sudo

root@HD:/# cat /etc/sudoers
Defaults    env_reset
root    ALL=(ALL) ALL
user ALL=(ALL) ALL
%sudo ALL=(ALL) ALL

루트로서 sudo오류 없이 실행할 수 있습니다.

sudo(또는 setuid)이 작동하지 않는 이유를 설명할 수 있는 사람이 있나요 ?

답변1

내 생각에는 이것이 /debian-squeezeor 없이 마운트된 별도의 파일 시스템에 있는 것 같습니다. 커널은 마운트 해제된 파일 시스템에서 setuid 비트(묵시적)를 무시합니다. 이 문제를 해결하려면:defaultssuidsuiddefaultssuid

mount -o remount,suid /debian-squeeze

관련 정보