Ảnh chụp màn hình của X từ tty


15

Sử dụng Xvfb tôi có thể khởi chạy một ứng dụng và chụp ảnh màn hình.

Điều tôi băn khoăn là làm thế nào để chụp từ phiên X (không hoạt động) hiện có.

Nói từ tty hoặc hơn ssh.

Từ những gì tôi hiểu, các cửa sổ không được ánh xạ và không tồn tại để bảo tồn tài nguyên. Có một số công cụ có thể ánh xạ các cửa sổ hiện có, không gian làm việc, vv trong một trình quản lý cửa sổ ảo và chụp nhanh không?

Hoặc có lẽ ai đó có thể sử dụng libx11và tạo một snap bằng cách sử dụng XShmCreateImagehoặc tương tự?


2
xwd -root | convert - /tmp/image.jpgnhững gì bạn đang tìm kiếm?
jippie

3
@jippie: Có lẽ. Vấn đề là khi các cửa sổ không được ánh xạ, không có gì để xwd kết xuất - dẫn đến hình ảnh màu đen. (Hãy thử lệnh đó từ tức là tty1 xwd -display :0 -root | convert xwd:- /tmp/0.png)
Runium

không chắc chắn ý của bạn là 'không được
ánh xạ

4
@jippie: Chúng không nằm trong bộ nhớ. Theo tôi hiểu: Khi bạn ở trên không gian làm việc của mình - nó đang hoạt động - các pixel được ánh xạ trong bộ nhớ để GPU xử lý và hiển thị trên màn hình. Khi không gian làm việc được chuyển đổi hoặc thoát (Tức là bằng Ctrl-Alt-F1), các bản đồ này không được ánh xạ (để giải phóng tài nguyên) - do đó không có gì trong "bộ đệm hiển thị" - và cho hình ảnh màu đen.
Runium

Tôi hiểu ý của bạn, thnx cho lời giải thích. Không biết câu trả lời trong trường hợp này mặc dù.
jippie

Câu trả lời:


7

Chúng ta có thể "bật" X tty bằng tay từ dòng lệnh, mà không cần ctrl-alt-F (x).

Nếu X ở trên tty 7 và bạn đăng nhập một thiết bị đầu cuối văn bản

chvt 7 ; DISPLAY=0.0 xwd -root > screendump.xwd ; chvt 1

Tuy nhiên, xhost + localhost phải là vấn đề trong xsession, xwd khác không thể kết nối với máy chủ x.

Điều này cho phép bạn làm điều đó từ phiên ssh.

PS: Về lý thuyết, với MTD , có thể thực hiện chụp màn hình từ bộ nhớ thẻ video. Do đó, không có "đánh thức" phiên X đầu tiên.


Cảm ơn bạn cho một bài viết tốt. Tôi đang nhìn vào nó. Một trong những vấn đề chính của tôi là tôi là một cửa sổ cũ và có một số vấn đề nắm bắt cách mọi thứ được đan lại với nhau. Máy chủ X, trình quản lý cửa sổ X, truy cập và soạn thảo. Nhưng đến đó.
Runium

@Sukminder Bạn có gặp khó khăn khi thiết lập điều này hoặc cần thêm hướng dẫn về vấn đề này không?
John Siu
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.