Cách tắt màn hình (Linux không có X)


15

Tôi muốn biết liệu có cách nào để tôi có thể vô hiệu hóa màn hình trên một bản phân phối linux tôi đang sử dụng Debian không. Tôi đã tìm thấy một vài cách để làm điều đó với X được cài đặt, nhưng không phải không có X.


Nếu bạn chưa cài đặt Xserver, vậy chính xác thì bạn muốn tắt cái gì? Bạn có thể giải thích những gì bạn muốn thêm một chút?
Telemachus

1
Chinh xac thi bạn đang noi cai gi vậy? xin làm rõ
hasen

@Mnml: trong một bình luận bên dưới, bạn đề cập đến một máy tính xách tay và tắt màn hình. Tôi không chắc chắn bạn muốn tạo một máy chủ không đầu trên máy tính xách tay. Điều này đánh tôi là khá phản trực giác.
Telemachus

2
@Telemachus: Tôi đang sử dụng máy tính bảng cũ như một máy chủ "nhà" nhỏ, nó đủ nhanh cho các dịch vụ tôi đang chạy trên nó (dovecot, v.v.) và nó không sử dụng nhiều điện ... Sẽ còn tốt hơn nữa không có màn hình ;-)
mnml

Câu trả lời:


14

Bạn có thể tắt màn hình trên máy tính xách tay của mình bằng lệnh xset :

xset dpms force off

DPMS là Tín hiệu quản lý năng lượng hiển thị, một tiêu chuẩn để giảm mức tiêu thụ điện trong màn hình. xset tất nhiên là một tiện ích X. Nếu bạn cần thực hiện việc này mà không cần tham gia X, hãy sử dụng setterm :

setterm -powerdown 1

Danh sách đầy đủ các tùy chọn để thao tác trên màn hình của bạn:

xset -dpms          # Disable DPMS
xset +dpms          # Enable DPMS
xset s off          # Disable screen blanking
xset s 150          # Blank the screen after 150 seconds
xset dpms 300 600 900       # Set standby, suspend, & off times (in seconds)
xset dpms force standby     # Immediately go into standby mode
xset dpms force suspend     # Immediately go into suspend mode
xset dpms force off     # Immediately turn off the monitor
xset -q             # Query current settings

setterm -blank 10           # Blank the screen in 10 minutes
setterm -powersave on       # Put the monitor into VESA power saving mode
setterm -powerdown 20       # Set the VESA powerdown to 20 minutes

Tất cả đều được giải thích hợp lệ trong Linux Powered-MiniTO .


1
xset yêu cầu Xserver không may Chương trình 'xset' hiện chưa được cài đặt. Bạn có thể cài đặt nó bằng cách gõ: apt-get install x11-xserver-utils
mnml

1
Với setterm -powersave on, tôi nhận đượccannot (un)set powersave mode
IanVaughan

6

Kiểm tra vbetool . Bạn có thể tắt màn hình bằng:

vbetool dpms off

Vấn đề duy nhất tôi gặp phải là điều này là màn hình không tự động bật lại, ví dụ như nhập bàn phím. Bạn phải thực hiện thủ công bằng cách nhập nó một cách mù quáng hoặc thông qua SSH:

vbetool dpms on

Trên Debian Squeeze, vbetool được sử dụng trong /etc/acpi/lid.sh khi X không có sẵn.


2
người ta có thể viết một đoạn script nhỏ làm trống màn hình, đợi đầu vào và sau đó bật lại nó. Một cái gì đó như vbetool dpms off && read -s -n 1 && vbetool dpms on.
Bobby

Tôi đang sử dụng máy chủ Ubuntu, và đây là cách duy nhất tôi tìm thấy để tắt hiển thị mà không có x. Cảm ơn bạn!
user180574

1

Tôi không chắc gói nào cung cấp gói đó, nhưng một số gói liên quan đến ACPI bao gồm các tập lệnh để làm trống màn hình dựa trên việc nắp máy tính xách tay có mở không. Mặc dù bây giờ tôi nhìn vào chính tập lệnh ( /etc/acpi/lid.sh), nó dường như chỉ hoạt động trên X. Tuy nhiên, vấn đề là nó cung cấp một khung để kích hoạt các hành động đối với các sự kiện mở / đóng nắp. Bạn có thể sửa đổi tập lệnh để sử dụng setterm và nó có thể làm những gì bạn muốn.


1

Trong Kali GNU / Linux Cán kiểm tra 64 bit nếu xset -qhiển thị như thế này:

DPMS (Energy Star):
Standby: 600 Suspend: 600 Off: 600

Đặt tất cả chúng thành 0 hoạt động cho tôi. Làm điều đó với dòng lệnh này:

xset dpms 0 0 0

0

Nếu bạn có một cổng nối tiếp trên máy, bạn có thể chạy nó không đầu.

Thực hiện tìm kiếm trên web cho "linux serial console howto".


0

Trả lời câu hỏi của bạn,

setterm -blank 0

Hãy làm nó. Lưu ý rằng điều này sẽ cần phải được thực hiện cho mỗi tty đăng nhập.


0

Nếu bạn tình cờ cần tắt màn hình từ xa, ví dụ như trên máy tính xách tay khi đăng nhập qua SSH ...

DISPLAY=":0" xset dpms force off

Trừ khi bạn chỉ định một DISPLAYbiến, xset sẽ thất bại với:

xset: unable to open display ""
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.