추가 읽기

추가 읽기

다음과 같이 at 명령을 사용하여 컴퓨터 종료를 예약하려고 합니다.

echo "systemctl poweroff" | at -M now +1 minute

또는 다음과 같습니다:

echo "sudo systemctl poweroff" | at -M now +1 minute

그러나 아무 일도 일어나지 않았습니다. 왜?

atd실행하면 다음 명령이 제대로 작동하는지 확인하기만 하면 됩니다.

echo "echo Hello 2>&1 > /home/<user_name>/at-test.txt" | at -M now +1 minute

예약된 폐쇄를 사용하는 것이 가능하다는 것을 알고 있습니다 shutdown -P TIME. 하지만 다른 대안을 지적하기보다는 먼저 제 질문에 답변해 주시기 바랍니다. 그럼 내가 뭘 잘못하고 있는 걸까요?

답변1

정책 도구 키트는 로그인된 세션의 shutdown컨텍스트에서 실행되는 규칙에 적용하는 것과는 다른 작업으로 비로그인 세션 (다른 이름의 프로그램)의 컨텍스트에서 실행되는 규칙에 규칙을 적용할 수 있습니다.poweroffsystemctlatshutdown

sudo이 푸딩에는 계란이 너무 많아서 불필요하게 복잡성이 추가되었습니다. 시스템은이미권한이 없는 사용자와 어떤 컨텍스트에서 시스템 종료를 성공적으로 트리거할 수 있는지 결정하는 규칙을 적용합니다. sudo추가 메커니즘 추가가장 중요한 것은이는 단순히 액세스 규칙 세트의 수를 두 배로 늘리고 문제 진단 시 고려해야 할 가능한 시나리오의 수를 늘립니다.

추가 읽기

관련 정보