sudo 명령 목록의 비밀번호를 기억하시나요?

sudo 명령 목록의 비밀번호를 기억하시나요?

Linux에서 만들 수 있는 방법이 있나요?스도사용자가 첫 번째 줄에 입력한 비밀번호를 기억하는 명령은 무엇입니까?

예를 들어, 사용자가 입력해야 하는 명령 목록의 경우 일부 명령에는 다음이 필요합니다.스도접두사, 사용자가 지침을 한 번에 터미널에 복사하여 붙여넣는 경우 비밀번호가 한 번만 묻는지 확인하는 방법은 무엇입니까?

예:

mkdir ~/acpiinfo ; cd ~/acpiinfo
sudo acpidump > acpidump.txt
# enter password 
sudo acpixtract acpidump.txt
ls *.dat | while read i; do iasl -d "${i}"; done
pid=`sudo dmidecode -s system-product-name`
vid=`sudo dmidecode -s system-version`
name=$pid.$vid
mkdir "${name}" && cp *.dsl "${name}"/ 
tar czf "${name}.tar.gz" "${name}"/ && ls -l "$( pwd )/${name}".tar.gz

답변1

기본적으로 이 작업을 수행해야 합니다. sudo 맨페이지에서:

사용자가 인증되면 타임스탬프가 업데이트되고 사용자는 짧은 시간(Sudoers에서 재정의되지 않는 한 5분) 동안 비밀번호 없이 sudo를 사용할 수 있습니다.

귀하의 시스템이 이 작업을 수행하지 않으면 확인해 보십시오 /etc/sudoers. sudoers 맨페이지에서:

타임스탬프 시간 초과

sudo가 비밀번호를 다시 요청하기 전까지 경과할 수 있는 시간(분)입니다. 작은 세분성만으로는 충분하지 않은 경우 시간 제한에 2.5와 같은 소수 부분이 포함될 수 있습니다. 기본값은 5입니다. 항상 비밀번호를 묻는 메시지를 표시하려면 0으로 설정하세요. 0보다 작은 값으로 설정하면 사용자의 타임스탬프가 만료되지 않습니다. 이는 사용자가 각각 sudo -v 및 sudo -k를 통해 자신의 타임스탬프를 생성하거나 삭제할 수 있도록 하는 데 사용할 수 있습니다.

따라서 timestamp_timeout변수가 0으로 설정된 것 같습니다. 라인을 실행 visudo하고 주석 처리하거나 원하는 대로 설정하세요.

답변2

이중 sudo 예불필요한:

sudo sh -c "apt-get update && apt-get -y dist-upgrade && apt-get -y autoremove && apt-get autoclean"

이 접근 방식은 명령에 시간이 오래 걸리더라도 문제 없이 작동합니다.

답변3

sudo bash -c 'sudo cmd1; cmd2; sudo cmd3;...'관용구는 일련의 명령에 대한 암호를 기억하는 것으로 보입니다.

# test cases
sudo bash -c 'sudo ls -ld *; sleep 500; sudo ls -ld *'
sudo -k
sudo bash -c 'sudo ls -ld *; sudo -k; sleep 5; sudo ls -ld *'

답변4

sudo -s쉘은 루트로 시작됩니다(비밀번호를 묻는 메시지가 나타날 수 있습니다). 그런 다음 sudo를 앞에 붙이지 않고도 여러 명령을 입력할 수 있습니다. 완료되면 exit루트 쉘입니다.

관련 정보