컴퓨터가 절전 모드로 전환되도록 인터넷 공유를 구성 할 수 있습니까?


9

TL; DR : 인터넷 공유로 인해 Mac이 잠자기 상태가되지 않습니다. 정기적으로 시스템을 수동으로 절전 모드로 전환해야합니다. 잠자기 방지를 중지하도록 인터넷 공유를 구성하는 방법을 원합니다.

내 침실에 라우터에서 너무 멀리 떨어진 집에 iMac이 있고 무선을 사용할 수 없으며 여기에서도 3G 적용 범위가 끔찍하므로 인터넷 공유를 활성화하여 iPhone / iPad에 연결되어 있습니다. 아이맥.

직장에서 회사 네트워크에 있고 무선이 다소 불충분하고 제한적이므로 MacBook Pro에서도 인터넷 공유를 사용하도록 설정하여 iPhone이 내부에 도달 할 수 있습니다.

문제는 : + + (또는 > 절전)를 누르면 컴퓨터가 원하는대로 절전 모드로 전환되지 않습니다. 인터넷 공유를 먼저 비활성화하지 않는 한입니다.

집에서 나는 잠자는 동안 컴퓨터가 잠자기를 원하고 (절전 + 더 많은 침묵) 집에 갈 때도 잠자기를 원하므로 연결된 모든 응용 프로그램 (Adium, Colloquy 등)을 닫을 필요가 없습니다. 다음날 다시 다시 엽니 다.

pmset이 문제가 발생하지 않고 컴퓨터를 잠자기 할 수 있도록 구성 하거나 인터넷 공유를 어떻게 합니까?

참고 : 나는 이미 pmset다른 이유가 있는지 확인하는 데 사용 했으며 문제 pid는 항상 com.apple.InternetSharing입니다.

편집 : 컴퓨터를 자면 인터넷 공유를 사용할 수 없게됩니다. 컴퓨터가 완전히 절전 모드로 전환되고 컴퓨터가 깨어날 때만 인터넷 공유를 다시 설정하고 싶습니다.


위의 명령에 대한 내 출력은 DenySystemSleep입니다. 문자열을 찾았지만 sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.nat동작을 변경하는 데 사용할 수 없었습니다 . 좀 더 대답 해 주시겠습니까?
Irae Carvalho

예를 들어 공유를 끈 다음 잠을 자고 싶은 것을 원합니다. 그리고 자동으로 깨어날 때 공유를 켜는 다른 것.
GEdgar

바로 그거죠! 이것이 내가 필요한 것입니다
Irae Carvalho

답변:


8

원하는 것을 달성하기 위해 ControlPlane 을 사용하여 실험했습니다 . 나의 예비 결과는 그것이 당신이 원하는 것을 할 것이라는 것입니다.

ControlPlane은 '증거 소스'라는 시스템 변경을 감지합니다. 변경은 '컨텍스트'의 변경을 정의하는 '규칙'으로 평가됩니다. 각 상황과 관련된 것은 '행동'입니다.

'증거 출처'중 하나는 수면 / 깨우기 이벤트입니다. 따라서 잠자기 이벤트 (예 : Apple 메뉴에서 잠자기를 클릭 한 경우) 컨텍스트 '수면 시간'이 트리거되도록 규칙을 구성했습니다. 그리고이 맥락에서 나는 'ToggleInternetSharing'작업을 해제했습니다.

잠자기를 클릭하면 인터넷 공유가 꺼져 있고 잠시 후에 (영원한 것처럼 보이지만 10 또는 20 초 정도) Mac이 잠자기 상태라는 경고가 표시됩니다.

그리고 깨우기 이벤트에서 컨텍스트 'Waking Up'이 트리거되고 'ToggleInternetSharing'을 설정하는 작업이 수행되도록 두 번째 규칙이 있습니다.

나의 규칙과 행동 :

여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오

시도 해봐!

이것은 ControlPlane이 할 수있는 일의 표면을 긁는 것입니다.


놀라운 앱! 그것은 매력처럼 작동했습니다! 자세한 설명에 감사드립니다. 또한 앱이 완전히 무료이며 오픈 소스인지 확인했습니다. 나를 위해 이것은 이것을 사용하는 것에 찬성하여 플러스로 계산됩니다 =)
Irae Carvalho

ControlPlane에 대해 한동안 알고 있지만 사용하지는 않았습니다. 귀하의 질문은 그 기능을 탐구하는 훌륭한 이유였습니다. 감사합니다.
Gilby

여기 +1 ... OS X Mavericks v10.9.4매력과 함께 작동합니다. 감사합니다
gmo

훌륭한 응용 프로그램처럼 보입니다! 불행히도 El Capitan에서는 인터넷 공유 기능이 작동하지 않습니다 (Sierra에서도 마찬가지입니다).
Winterflags

2

Lion을 실행중인 경우을 InternetSharing명시 적으로 잠그고 있습니다 SystemSleep. 살펴보십시오 :

strings /usr/libexec/InternetSharing | grep SystemSleep

이 명령의 출력 : DenySystemSleep은 InternetSharing커널이 절전 모드로 전환 될 가능성을 의도적으로 차단하는 증거입니다 . 이 보호에 대한 간단한 설명이 있습니다. 일단 실행되면 InternetSharing이 Mac의 클라이언트는이를 라우터로 사용하여 인터넷에 액세스 할 수 있습니다. 화면 앞에있는 사람에 대한 지식 없이도이 인터넷 연결 위에서 많은 것이 자동으로 실행될 수 있습니다.

이 연결은 시스템을 시작한 시스템 관리자 만 수행해야하며 자동 시스템 동작은 수행하지 않아야합니다.

이것은 안전한 행동입니다.

따라서 InternetSharingMac 잠자기가 다음 순서로 4 개의 이벤트를 예약 하면 올바른 방법 이 해제됩니다.

InternetSharing off
    system sleep
    system wakeup
InternetSharing on

에서 제공하는 일정 ControlPlane입니다.


위의 명령에 대한 내 출력은 DenySystemSleep입니다. 문자열을 찾았지만 sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.nat동작을 변경하는 데 사용할 수 없었습니다 . 좀 더 대답 해 주시겠습니까?
Irae Carvalho

1
@ daniel-azuelos는 InternetSharing이 책임이 있음을 증명하는 것을 의미한다고 생각합니다. InternetSharing 바이너리를 통한 검색을 제안하고 절전 모드 차단과 관련된 문자열을 찾습니다. 이것은 수면을 막을 책임이 있지만 원하는 행동을 취하는 것은 아닌지 확인하는 데 도움이됩니다.
Graham Miln

1

인터넷 공유가 활성화 된 Mac을 잠자기 상태로 만드는 것은 실용적이지 않습니다.

인터넷 공유 기능은 라우터의 소프트웨어 버전입니다. 인터넷에 대한 게이트웨이, DHCP 서버, 방화벽 및 DNS 전달자 역할을합니다. 지역 소매점에서 구입할 수있는 라우터와 같은 기능을합니다. 그리고 무료입니다.

그러나 엄청난 단점이 있습니다. 게이트웨이 역할을하는 Mac이 꺼져 있거나 잠자기 상태이면 다른 컴퓨터는 온라인 상태가 될 수 없습니다.

인터넷 공유로 인해 컴퓨터가 절전 모드로 전환되는 것을 막을 수 있습니다.

하지만 잠들었을 때 파일 / iTunes / Screen을 공유 할 수 있습니다

예, 모든 것을 공유 할 수 있습니다. 그러나 해당 파일에 접근하면 Mac이 깨어납니다 . 이것을 Wake On Demand 및 Bonjour Sleep Proxy라고 합니다.

Mac이 잠자기 상태 인 경우 네트워크 연결이 "실제로"유지됩니다. Bonjour "패킷"이 컴퓨터를 깨우는 것을 듣고 있습니다. 이것은 공항 장치 (네트워크 어댑터) 자체에 의해 처리됩니다. 컴퓨터가 아닙니다. "웨이크 패킷"을 받으면 Mac이 깨어나고 리소스 공유를 시작할 수 있습니다.

Bonjour 1 은 소규모, 상태 비 저장 및 최소 메시지 지향 전송 인 UDP 2 프로토콜 (브로드 캐스트 및 라우팅 할 수 없음 ) 인 멀티 캐스트 도메인 이름 서비스 (mDNS)를 사용하는 제로 구성 검색 서비스입니다 .

기본적으로 UDP (Bonjour의 기반)는 컴퓨터에 "Wake up!"이라는 메시지를 보내는 데 적합합니다.

Internt를 찾아 보려면 (게이트웨이 Mac 뒤에있는 컴퓨터 사용) TCP 기반의 전체 프로토콜 스택이 필요합니다 . DHCP, NAT, 방화벽 등이 필요합니다. 즉, 클라이언트가 웹을 탐색하기 전에 모든 서비스를 가동해야합니다. 이것은 많은 대기 시간을 초래할 것입니다.

더 실용적인 방법으로 돌아 가면, Mac이 잠자기 상태가되어 게이트웨이 역할을한다면, 잠자기 상태가 아니거나 불면증이 나쁜 사람처럼 위아래로 움직이지 않을 것입니다.


1 Bonjour는 Apple에서 서비스 구성, 주소 할당 및 호스트 이름 확인을 포함하는 기술 그룹 인 zeroconf (zero-configurationnetwork)를 구현 한 것입니다. Bonjour는 멀티 캐스트 도메인 이름 시스템 (mDNS) 서비스 레코드를 사용하여 프린터, 기타 컴퓨터 및 해당 장치가 로컬 네트워크에서 제공하는 서비스와 같은 장치를 찾습니다.

2 UDP는 최소 메시지 지향 전송 계층 프로토콜입니다. UDP는 메시지 전달을 위해 상위 계층 프로토콜을 보장하지 않으며 UDP 계층은 한 번 전송 된 UDP 메시지 상태를 유지하지 않습니다. DHCP 및 Trivial File Transfer Protocol과 같은 전체 프로토콜 스택이없는 부트 스트랩 또는 기타 목적에 적합합니다.


앨런, 통찰력 주셔서 감사합니다. 필자의 경우, Thunderbolt Bridge를 통해 iMac에 연결하여 이더넷 (~ 30 Mbit Wifi 대신 100 Mbit)을 사용하는 MBP 때문에 인터넷 공유 만 사용합니다. 인터넷 공유를 '라우터'로 사용하지 않습니다. 따라서 스크립트 또는 자동화를 통해 인터넷 공유 (또는 강제 절전)를 활성화 / 비활성화하는 방법을 찾는 것이 실용적입니다.
Winterflags

인터넷 공유 Mac을 라우터로 바꾸고 있습니다. 이것이 인터넷 공유의 핵심 기능입니다.
Allan

이해하지만 기술적 인 용어로 말하지는 않습니다. Thunderbolt Bridge를 통해 MBP를 iMac에 연결할 때만 인터넷 공유를 사용하므로 iMac이 연결되어 있는지 여부에 관계없이 iMac을 절대 잠자기 상태로 두지 않는 것이 좋습니다. 따라서 스크립팅과 관련된 해결 방법을 찾고 있습니다.
Winterflags

1
인터넷 공유에서 MBP가 잠들지 못하도록 막는 것이 아니라 "해결 방법"을 보려면 apple.stackexchange.com/questions/2488/…
Allan

감사합니다. 이미 답변을 시도했지만 El Capitan (아마 SIP로 인해)에서 작동하지 못했지만 추가 조사가 필요합니다.
Winterflags 2016

1

레. ControlPlane, 이것은 나를 위해 작동합니다 ...

두 가지 맥락 (모두 동일) 규칙 세 가지 행동


0

컴퓨터의 전원 관리 장치가 장치를 절전 모드로 만들면 저전력 모드로 들어갑니다. 컴퓨터의 평균 실행 코드는 정상적인 방식으로 실행되지 않습니다. 컴퓨터는 메모리를 새로 고치기 (필요한 경우)에 충분한 전력을 유지하며 그 밖의 것은 거의 없습니다. 컴퓨터가 잠자기 상태 일 때는 범용 컴퓨팅에 참여할 수 없습니다.

그러나보아야 할 좋은 대안이 있습니다. 전체 장치를 절전 모드로 전환하는 대신 디스플레이 절전 모드를 확인하십시오 System Preferences -> Energy Saver. 내 유스 케이스에는 핫 코너 설정 (사용 가능 System Preferences -> Desktop & Screen Saver -> Screen Saver)이있어 점심 식사를하고 화면을 잠 그거나 디스플레이를 잠자기 상태로 전환해야 할 때 바닥으로 이동합니다. -왼쪽 코너. 잘 작동합니다. 컴퓨터가 휴면 루틴에서 돌아 오지 않고 잊어 버린 장기 실행 프로세스가 중단되지 않습니다. 귀하의 경우, 이는 WiFi 핫스팟이 떨어지지 않음을 의미합니다.


1
이것은 실제로 매우 유용합니다. <kbd> ^ </ kbd> + <kbd> ⇧ </ kbd> + <kbd> ⏏ </ kbd>를 사용하면됩니다. 그러나 그것은 내가 원하는 것이 아닙니다. 컴퓨터가 잠자는 동안 인터넷 공유가 필요하지 않습니다. 나는 컴퓨터를 정말로 잠들고 공유와 와이파이를 끌 필요가있다. 명확히하기 위해 내 질문을 편집 할 것입니다. 어쨌든 고마워 =)
Irae Carvalho

0

Power Manager 를 사용하면 일정 시간 동안 사용하지 않으면 Mac을 잠자기 상태로 만들 수 있습니다 . Power Manager는 인터넷 공유를 포함하여 유휴 절전을 차단하는 프로세스 및 애플리케이션을 무시할 수 있습니다.

사용 설명서는이를 설정하는 방법을 안내합니다.

더 나은 비 활동 유발 수면

Power Manager가 대안을 제공합니다. 우리는 비 활동 유발 수면을 제공합니다. 비활성은 유휴 시간과 다르게 측정됩니다. 비활성은 사용자 활동에 의해서만 결정되는 간단한 측정입니다.

또는 다음 레시피는 일정 시간 동안 활동이 없으면 Mac을 잠자기 상태 로 만드는 Power Manager 이벤트를 생성하는 방법을 보여줍니다 .

전원 관리자 : 비활성 작업 후 전원 끄기

면책 조항 : 저는 Power Manager를 개발하는 회사에서 일합니다.


인터넷 공유가 활성화 된 상태에서는 작동하지 않았습니다. 내 인생의 시간을 낭비한 -1.
Winterflags

무엇을 이루고 싶었고 무엇을하지 않았습니까?
Graham Miln

OP 및 답변과 동일합니다. 시스템 환경 설정> 공유 에서 인터넷 공유가 활성화 된 상태에서 '강제 절전 모드'가되도록 Inactivity Sleep을 구성했습니다 . 인터넷 공유가 비활성화되어 있으면 잠자기 기능이 활성화됩니다.
Winterflags

1
Power Manager는 macOS에 휴면 요청을 발행합니다. 다른 질문에서 알 수 있듯이 수면에 문제가있는 경우 동일한 수면 문제가 타사 응용 프로그램에서 발행 한 수면 요청에도 영향을 미칩니다. 물론, 나는 당신의 상황을 이해하는 데 착각하거나 단순하지 않을 수 있습니다. 해결책을 찾을 수 있기를 바랍니다.
Graham Miln

1
MacOS는 명시 적으로 잠자기 요청을 받으면 항상 잠자기 상태가됩니다 – Finder> Apple (메뉴)> 잠자기 . 잠자기 상태는 Mac에 문제가 있음을 나타내는 동작입니다.
Graham Miln
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.