sudo가 너무 오래 걸리는 이유는 무엇입니까?


13

최근에 macOS Sierra 10.12.4 Beta (16E144f)로 업데이트되었으며이 sudo문제가 발생한 이후로 가장 최근에 변경된 변경 사항으로 인해 최대 10 분 지연 될 수 있습니다 . 나는 기본 프로그램을 너무 오래 기다릴 필요가 없었으며 무언가 잘못되었습니다. 명령은 결국 성공하지만 너무 오래 기다린 후.

이 질문 을 참조 로 사용 했습니다 . 지금까지 호스트 이름을 127.0.0.1줄 끝에 추가하려고 /etc/hosts했습니다. 내가 확인 /etc/resolv.conf하고 난 수동 DNS 항목을 필요로 네트워크에있을 때 일부 추가 항목이했지만 내가 그들을 제거하고 차이가 없었다. networksetup -setdnsservers명령을 사용하여 원래 값을 복원했습니다. 인터넷은 여전히 ​​잘 작동하지만 여전히 매우 느립니다 sudo.

logger 'test'쓸 것이라고 생각 하는 명령을 시도했지만 /var/log/system.log곧 새로 작성되었지만 파일을 완전히 삭제 한 것처럼 보입니다.

strace명령 을 사용하여 실행 중에 sudo발생한 상황을 확인하려고 했지만 OS X에서 해당 명령을 사용할 수 없습니다. 이전에이 운영 체제에서이 문제가 발생한 적이 있습니까?

/var/log/system.log에는 다음과 같은 관련 메시지가 있습니다. 다시 명령은 정상적으로 정상적으로 성공합니다.

Feb  1 00:07:39 mycomputer com.apple.xpc.launchd[1] (com.apple.imfoundation.IMRemoteURLConnectionAgent): Unknown key for integer: _DirtyJetsamMemoryLimit
Feb  1 00:07:56 mycomputer com.apple.xpc.launchd[1] (com.apple.quicklook[2355]): Endpoint has been activated through legacy launch(3) APIs. Please switch to XPC or bootstrap_check_in(): com.apple.quicklook
Feb  1 00:08:16 mycomputer System Preferences[1886]: I can not do what i want
Feb  1 00:11:23 mycomputer com.apple.xpc.launchd[1] (com.apple.opendirectoryd[2335]): Service exited with abnormal code: 70
Feb  1 00:12:07 mycomputer syslogd[54]: ASL Sender Statistics
Feb  1 00:16:35 mycomputer com.apple.xpc.launchd[1] (com.apple.opendirectoryd[2395]): Service exited with abnormal code: 70

도움을 주시면 감사하겠습니다.


sudo를 통해 어떤 명령을 실행하는 것이 중요합니까? 로그의 타임 스탬프는 sudo 실행 및 sudo 실행시 작업과 어떤 관련이 있습니까? 거기에 opendirectoryd가 있는데 로컬 계정이나 네트워크 계정으로 작업합니까? 사용자를 전환하거나 로컬에서 새 사용자를 설정하면 sudo도 느려집니다.
nohillside

나는 같은 베타 버전을 사용하고 있으며 sudo는 실제로 항상 빠릅니다.
nohillside

1
@patrix 아 알았어. 예, 그것은 다른 것이 될 수 있습니다. 예, sudo와 함께 사용하는 명령에 관계없이 지연이 일관됩니다. 기본적 com.apple.quicklook으로이 명령은 해당 로그 라인 에서 시작하여 끝에서 끝납니다. 따라서이 예에서는 모든 메시지가 그 사이에있는 약 8 분이었습니다. opendirectoryd 메시지는 sudo ls로컬 홈 디렉토리에서 마지막으로 실행될 때마다 발생하는 것 같습니다 . 지금은 로컬 폴더로만 작업하고 있습니다. 난 단지 내가 ... 새로운 계정을 어떻게 볼 수 있지만이 컴퓨터에 하나의 사용자가
스펜서 윌리엄스

@patrix 방금 관리자 권한으로 다른 사용자를 만들었습니다. 안타깝게도 그 계정은 똑같은 문제가 있습니다.
스펜서 윌리엄스

답변:


11

ErikMH의 대답은 먼저 전체 시스템을 다시 되돌 리거나 업그레이드하지 않고 sudoers 파일을 되돌리려는 아이디어를 얻었습니다. 간단히 말해 :

  1. 루트 쉘을 얻으려면 이것을 실행하십시오. sudo -s
  2. 사본 만들기 /private/etc/sudoers
  3. 운영: cp /private/etc/sudoers\~orig /private/etc/sudoers
  4. 다음을 실행하여 권한을 수정하십시오. chmod 440 /private/etc/sudoers ; chown root:wheel /private/etc/sudoers
  5. /private/etc/sudoers.d/거기 에서 멀리 파일을 이동
  6. sudo다른 터미널에서 테스트
  7. 의도하지 않은 경우 루트로 부주의하게 명령을 실행하는 것을 방지하기 위해이 쉘을 종료하는 것을 잊지 마십시오.

이제 실행 sudo이 다시 작동합니다.

다음 단계는 이전의 sudoers 파일의 차이점 (당신이 떨어져 2 단계에서 복사)와 현재를 확인하고 단계를 다시하여 이러한 변화 단계를 추가하는 것입니다 /private/etc/sudoers또는 /private/etc/sudoers.d/때마다 사용하여 명령을 실행하는 sudo경우, 변경 휴식을 확인 할 수 있습니다.

필자의 경우 sudoers 파일에 존재하지 않는 그룹을 지정했습니다. 수정하여 내 문제가 해결되었습니다.


macOS 10.13에서 작동했습니다!
Nisba

나를 위해 일했습니다 (OSX 10.13). sudoer 파일에 존재하지 않는 그룹도 같은 문제가있었습니다.
Petr Cibulka

흠 ...이 문제가 발생한 컴퓨터에서 sudoers 파일을 변경 한 것을 기억하지 못하지만 시스템을 복원하는 대신 제안한 사항을 시도했으면합니다.
스펜서 윌리엄스

나는 사람들이 도움이된다고 확인하는 것처럼 보이기 때문에 귀하의 대답을 받아 들였습니다.
스펜서 윌리엄스

2

/ private / etc / sudoers 파일을 편집 한 경우 10.12.4로 업그레이드 할 때 발생할 수 있습니다.

가장 쉬운 해결책은 다음과 같습니다.

  1. 이전 버전의 시스템으로 돌아가십시오 (업데이트하기 전에 항상 시스템을 복제하십시오. 그렇지 않습니까?)
  2. / private / etc / sudoers 삭제
  3. / private / etc / sudoers ~ orig를 sudoers에 복사
  4. sudoers의 소유권을 시스템 / 루트로 재설정-읽기 전용
  5. 시스템을 10.12.4로 업그레이드

"/ private / etc / sudoers 파일을 편집 한 경우 10.12.4로 업그레이드 할 때 발생할 수 있습니다." 실제로 원인을 알고 있습니까?
Wowfunhappy

1

이 문제의 실제 원인을 찾을 수 있었으면 좋겠지 만 시스템 소프트웨어를 복원 한 후에 만 ​​문제를 해결할 수있었습니다. 나는 이전에 macOS Sierra의 공개 베타에 있었지만 지금은 주요 베타에 있습니다.

모든 프로그램을 천천히로드하는 중이며 sudo다시 지연이 발생하면 알려드립니다 .


0

/etc/sudoers.d/제거한 파일이 있습니다. 짜잔- sudo다시 빠릅니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.