2012-10-08 29 views
8

Có một số chương trình chạy dưới MacOSX Mountain Lion hiện đang (kể từ khi cài đặt 10.8.2) gây ra các xác nhận quản lý nguồn không mong muốn được thiết lập. Tôi đang tìm cách xác minh rõ ràng như thế này.MacOSX 10.8.2: Làm thế nào để xóa các xác nhận quản lý nguồn không mong muốn?

Dưới đây là một ví dụ: một hoặc nhiều chương trình trong số này gây ra xác nhận quản lý năng lượng sau được đặt trong "powerd". Lưu ý dòng "powerd", bên dưới ...

% pmset -g assertions  
10/7/12 11:51:47 AM EDT 
Assertion status system-wide: 
    PreventUserIdleDisplaySleep 1 
    CPUBoundAssertion    0 
    PreventSystemSleep    0 
    PreventUserIdleSystemSleep  0 
    ExternalMedia     0 
    UserIsActive     0 
    ApplePushServiceTask   0 
    BackgroundTask     0 

Listed by owning process: 
    pid 18(powerd): [0x00000005000001d7] 11:24:18 PreventUserIdleDisplaySleep named: "com.apple.powermanagement.delayDisplayOff" 
... etc. ... 

Các chương trình này thoát và để lại xác nhận quản lý năng lượng này trong "powerd" và nó vẫn hoạt động mãi mãi. Điều này ngăn cản "ngủ hiển thị" và trình bảo vệ màn hình từ khi được gọi.

Tùy chọn duy nhất tôi biết trong trường hợp này (ngoài việc khởi động lại) là thực hiện "kill -HUP" trong quy trình "powerd". Điều này làm cho daemon thoát ra và khởi động lại mà không có xác nhận sai.

Có ai biết cách nào dưới 10.8.2 để tôi xóa xác nhận "PreventUserIdleDisplaySleep" trong "powerd" mà không buộc phải khởi động lại trình nền đó không? Tôi rất vui khi thực hiện điều này thông qua chương trình Cocoa, Carbon hoặc AppleScript, nếu cần.

Tôi biết về IOPMLib, nhưng các thói quen trong thư viện đó dường như chỉ có thể xóa các xác nhận quyền lực đã được tạo trong cùng một quy trình. Tôi cần một cách để nói với quá trình "powerd" bên ngoài và đã chạy để xóa xác nhận "PreventUserIdleDisplaySleep" rằng quản lý. Có ai biết về một API để thiết lập bên ngoài và xóa các xác nhận quản lý nguồn trong một cá thể "powerd" đang chạy không? Có lẽ thông qua một số loại thông báo ... ???

+0

nó không xóa các xác nhận nhưng điều này có thể hữu ích: http://www.dragonone.com/products/macosx/pleasesleep/ –

Trả lời

0

Excerpt from here

Nó nói sư tử, nhưng đó cũng chính là vấn đề bạn đang thấy.

pmset -g

pmset -g khẳng định

ps -ax | grep [pid chạy]

kill -9 [pid chạy]

2

Câu trả lời là rất đơn giản. Tôi đã từng gặp vấn đề tương tự.

Sao lưu các thư mục sau có thể tìm thấy trong /Library/LaunchAgents/LaunchDaemons/Internet Plug-ins. Tiếp theo. Làm trống nội dung của các thư mục. Sau đó khởi động lại mac của bạn. Kiểm tra cài đặt năng lượng của bạn hoặc chỉ cần kiểm tra trong thiết bị đầu cuối (pmset -g assertions). Vấn đề của bạn cần được giải quyết. Bạn có thể đặt từng tệp một lại để tìm tệp gây ra sự cố hoặc để nguyên tệp này theo cách này.

Bạn sẽ nhận được cửa sổ bật lên khi bạn sử dụng Safari và thiếu plugin. Bạn chỉ có thể cài đặt lại chúng. Mac của bạn cũng hoạt động tốt.

Các vấn đề liên quan