sudo
사용자 가 비밀번호를 입력하도록 요구하는 CIFS 설치 명령을 실행하고 있습니다 . 나는 다음과 같은 줄로 스크립트를 작성했습니다.
/usr/sbin/mount.cifs -o user=$SUDO_USER,domain=WORKGROUP //stserv.foo.com/share /mnt/share
sudo
사용자에게 스크립트를 제공합니다 . 사용자에게 비밀번호를 입력한 후 설치하면 이 모든 것이 제대로 작동합니다.
하지만 시간 제한을 설정하고 싶어서 timeout 10s
스크립트의 명령 앞에 추가했습니다. 지금 실행하면 작동하지 않습니다 sudo
. 사용자에게 비밀번호 프롬프트가 표시되지만 비밀번호를 입력하면 비밀번호가 터미널에 "*****" 대신 일반 텍스트로 나타나고 명령은 시간 초과될 때까지 중단됩니다. 그런 다음 사용자의 비밀번호를 명령으로 실행하려고 시도합니다.
이 경우 프로세스 트리를 보면 다음과 같습니다.
bash───sudo(root)───mount_sleepepi───timeout───mount.cifs───mount.cifs───systemd-ask-pas
systemd-ask-pass
그래서 이것이 방해가 되는 것 같습니다 .
시간 초과 시 이런 일이 발생하지 않도록 하는 방법이 있습니까?
답변1
@meuh가 지적했듯이 대답은 timeout 명령에 --foreground 옵션을 추가하는 것입니다.