OS X 10.6의 새로운 Kerberos 제한 때문에 10.5에서 사용할 수 있었던 기능과 비슷한 기능을 제공하는 스크립트를 작성하고 있습니다. 본질적으로 klist 출력을 파싱하여 티켓이 만료되는지 확인하고 만료 될 때까지 표시합니다. 10 분을 넘기면 kinit를 호출하여 GUI 비밀번호 프롬프트에서 kerberos 비밀번호를 묻습니다. 티켓이 만료되면 같은 일을합니다.OS X 10.6의 화면에서 화면이 잠겼거나 화면 보호기가 활성화되어 있는지 어떻게 알 수 있습니까?
스크립트는 kinit가 다시 호출하기 전에 kinit가 실행되고 있지 않아야 여러 kinit 호출이 없으므로 스크립트가 실제로 작동 (GeekLog에서 호출되어 상태를 볼 수 있음)합니다. 문제는 오늘 아침에 스크린 잠금을 해제 할 때 시스템이 회전하는 비치 볼을주고 있다는 것입니다. 내 대본 및/또는 kinit이 무언가를하는 것으로 의심하고 있습니다. 기계는 ping을 통해 사용할 수 있었지만 그렇지 않으면 ssh 또는 AFP에 응답하지 않았습니다.
그래서 내가하고 싶은 것은 화면이 잠겨 있는지 또는 화면 보호기가 약정되었는지를 감지하는 것입니다. 이전 버전의 OS X에서는 ScreenSaverEngine이 활성 상태인지 아닌지를 확인할 수 있었지만 더 이상 문제가되지 않는 것으로 나타났습니다.
그렇다면 화면이 잠겼거나 명령 줄 도구를 사용하여 로그인했는지 어떻게 확인할 수 있습니까? 화면이 잠겨 있으면 스크립트를 종료하여 klist에 신경 쓰지 않거나 kinit를 시도합니다. 나는 그것이 오늘 아침에 경험했던 잠김을 막을 수 있기를 바라고 있습니다. 어떤 아이디어?
예, ps ax | awk '{print $ 5, $ 6}'를 사용하여 시도했습니다. (따라서 pid 및 실행 시간과 같은 항목은 diff가 잘못된 긍정을 유발하지 않도록합니다.) 절대 변경이 없습니다. 그래서 (화면이 잠길 때 나타나는 이전 버전의 ScreenSaverEngine과는 달리) 이것을 처리하는 기존 프로세스가 있습니다. –