Làm thế nào để gỡ lỗi một vấn đề đình chỉ?


11

Tôi đã từng cài đặt Fedora 14 trên HP Compaq 610 này và tính năng tạm dừng hoạt động tốt. Bây giờ tôi đã cài đặt đình chỉ Khoa học Linux 6.1 không hoạt động nữa. Làm thế nào để tôi gỡ lỗi / sửa chữa nó?


Đây có phải là hệ thống treo vỏ (<kbd> Cntl-z </ kbd>) hoặc HĐH (ngủ hoặc ngủ đông) không?
Arcege

@Arcege: Tôi cho rằng anh ta có nghĩa là ACPI đình chỉ, vì ngày nay nó trở thành một vấn đề phổ biến.
JM Becker

Câu trả lời:


9

Có nhiều cách để xử lý các khả năng đình chỉ và ngủ đông, nhiều phương pháp cũ bị phản đối. Điều này đã làm cho việc tìm kiếm các giải pháp trở nên khó khăn, vì dường như mọi giải pháp hoàn toàn không liên quan đến kế tiếp. Nói vậy ...

Phương pháp hiện được khuyến nghị, ủng hộ từ http://pm-utils.freedesktop.org/wiki/ , nên có sẵn cho hầu hết các bản phân phối gần đây. Trước tiên tôi sẽ kiểm tra xem bạn đã pm-utilscài đặt chưa và nếu các lệnh đi kèm đang hoạt động như mong đợi.

Xem nếu gói được cài đặt, nhập lệnh này trong thiết bị đầu cuối

rpm -qa | grep pm-utils

Điều này sẽ xuất phiên bản bạn đã cài đặt. Nếu bạn không nhận được đầu ra dự kiến, bạn cần cài đặt gói.

sudo yum install pm-utils

Khi bạn đã xác minh điều đó, hãy kiểm tra khả năng đình chỉ của bạn.

sudo pm-suspend

Nếu bạn không tạm dừng và không nhận được kết quả tại sao, hãy kiểm tra đầu ra dmesg gần đây của bạn

dmesg | tail -50

Điều này sẽ giúp bạn bắt đầu, một khi bạn nhận được một số manh mối thì việc đi sâu hơn xuống đường mòn sẽ dễ dàng hơn nhiều. Gửi lại với ý kiến ​​liên quan đến kết quả của bạn, tôi có thể giúp bạn vượt qua phần còn lại.


Tôi thậm chí đã cài đặt pm-utils-devel. pm-đình chỉ với người dùng root thực hiện tương tự như với người dùng bình thường khi nhấp vào Gnome / menu-> đình chỉ-> không có gì, máy chỉ nói "mạng bị tắt", sau đó nó chỉ chờ và chờ, v.v. tôi có thể Tôi sẽ không bắt đầu bất cứ điều gì sau khi tôi đang cố gắng đình chỉ. Tôi sẽ gặp dmesg sau, cảm ơn bạn!
LanceBaynes

Đầu dmesgra sẽ cho bạn biết những gì đang xảy ra đằng sau hậu trường. Quan trọng hơn, những gì đặc biệt có thể là thất bại. O và BTW, bạn không cần gói phát. Bạn chỉ cần chúng khi biên dịch mã, vì vậy hãy thoải mái thanh lọc. Có nhiều hướng để đi từ đây, tôi chỉ không gửi cho bạn sủa sai cây.
JM Becker

1
@LanceBaynes bạn đã thử chạy các pm-suspendlệnh từ shell và không thông qua menu Gnome? Hãy thử echo -n "mem" >/sys/power/statelàm root. Ngoài ra nếu bạn đang sử dụng, acpibạn có thể acpi_listenxem những sự kiện nào đang được tạo, ví dụ như khi đóng nắp.

Ôi, wtf? Tôi "echo -n" mem "> / sys / power / state" với người dùng root và tôi thực sự bị treo !!!! Ôi. Vấn đề duy nhất bây giờ là khi tôi thực hiện loại đình chỉ này, thì trình bảo vệ màn hình gnome không khởi động và để lại cho tôi một PC đã được mở khóa. Làm thế nào để có được xung quanh này? Làm cách nào tôi có thể tạo tập lệnh / bất cứ thứ gì để người dùng bình thường cũng có thể sử dụng loại đình chỉ này? Không chỉ người dùng root? - và một điều nữa: CẢM ƠN BẠN!
LanceBaynes

2
@LanceBaynes: Bây giờ nó đang hoạt động? ... Tôi đã từng tin rằng loại Break / Repair "bất ngờ" này chỉ xảy ra với Widoze. Thật không may, tôi đã ngừng tin tưởng điều đó trong một thời gian. Nhưng ... về mặt tươi sáng, nó ít xảy ra hơn! Và đình chỉ của bạn đang hoạt động, vì vậy đó là tin tuyệt vời!
JM Becker

8

Hãy thử cái này như root:

PM_DEBUG=true pm-suspend

Sau đó kiểm tra /var/log/pm-suspend.loggợi ý về những gì có thể đi sai.

Nếu bạn có thể tạm dừng, nhưng không tiếp tục, có một bài viết hay trên wiki Ubuntu về cách gỡ lỗi vấn đề này.


2

Nếu bạn chỉ muốn nhận khi bạn tạm dừng / tiếp tục hệ thống, bạn có thể thử điều này:

cat /var/log/syslog | grep 'systemd-sleep' | grep "Suspending\|resumed";
Feb  7 10:44:23 dmatej-lenovo systemd-sleep[19900]: Suspending system...
Feb  7 10:44:33 dmatej-lenovo systemd-sleep[19900]: System resumed.
Feb  7 10:45:35 dmatej-lenovo systemd-sleep[20707]: Suspending system...
Feb  7 12:58:39 dmatej-lenovo systemd-sleep[20707]: System resumed.
Feb  7 14:42:55 dmatej-lenovo systemd-sleep[24690]: Suspending system...
Feb  7 16:31:57 dmatej-lenovo systemd-sleep[24690]: System resumed.

1

Theo đề xuất của Mika, là root:

PM_DEBUG=true pm-suspend

Chi tiết trong:

/var/log/pm-suspend.log

Trong trường hợp này bạn đang tìm kiếm nơi

[...] service [servicename] suspend suspend success

kết thúc, và

[...] service [servicename] suspend resume success

bắt đầu Một nơi nào đó ở giữa bạn có thể tìm thấy lỗi gọi lại, tại thời điểm đó, việc tạm dừng bị ức chế. Trong trường hợp này, bạn có thể tạm dừng các thay đổi được khôi phục. Chỉ ra cuộc gọi dịch vụ nào đang gây ra lỗi, mở nó trong vi và xem nó.

Tôi gặp vấn đề tương tự khi sau khi cài đặt xboxdrvtrên Ubuntu 12.04, một cuộc gọi được thực hiện theo quy tắc /etc/pm/sleep.d/là cố gắng ngăn chặn một dịch vụ không bao giờ bắt đầu hoặc không tồn tại, trong trường hợp này , xboxdrv. Hóa ra nó không bao giờ có thể được bắt đầu ở nơi đầu tiên, vì không có /lib/modules/uinput.komô-đun, vì mô-đun đó được hợp nhất vào kernel. Điều này gây ra tuyên bố trường hợp /etc/pm/sleep.d/xboxdrvđể đưa ra một lỗi khi trường hợp khớp với "tạm dừng" với cuộc gọi service xboxdrv stop. Chuẩn bị đường dây #bỏ qua câu lệnh, với chi phí phải rút và cắm lại bộ điều khiển của bạn khi tạm dừng sau đó tiếp tục.


Tôi không có lỗi trong nhật ký gỡ lỗi sau khi chạy nó, nhưng thật kỳ diệu là nó đã bắt đầu hoạt động trở lại ;-) Tôi tự hỏi liệu nó có sửa chữa vĩnh viễn không ...
Wirone
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.