Tampilkan info monitor melalui baris perintah


26

Apakah ada cara untuk meminta informasi monitor dari baris perintah? Misalnya, dapatkan model monitor, mirip dengan misalnya apa yang lspcidilakukan untuk info kartu grafis, atau apakah saat ini hidup atau mati, hal-hal seperti itu.

Jika memungkinkan, jenis informasi dasar seperti apa di atas dapat dengan mudah dikumpulkan? Sebagai contoh, apakah mungkin untuk menentukan apakah monitor dalam posisi portrait atau landscape? Atau apakah memiliki speaker bawaan atau tidak?

Baris perintah adalah pilihan, tetapi jika ada metode GUI, saya juga ingin mendengarnya.


GPU apa yang Anda miliki?
thom

02: 00.0 Pengontrol kompatibel VGA: Advanced Micro Devices [AMD] dan ATI Madison [Mobility Radeon HD 5650/5750 / 6550M]
icyrock.com

mungkin Anda memiliki lebih beruntung dengan: sudo apt-get install xresprobedan menjalankansudo ddcprobe
thom


Jawaban:


14
$ grep "NVIDIA(GPU-0)" /var/log/Xorg.0.log |head -17| cut -d\: -f2
 Display (Samsung SA300/SA350 (DFP-0)) does not support NVIDIA
     3D Vision stereo.
 The EDID for Samsung SA300/SA350 (DFP-0) contradicts itself
     mode "1920x1080" is specified in the EDID; however, the
     EDID's valid VertRefresh range (56.000-75.000 Hz) would
     exclude this mode's VertRefresh (50.0 Hz); ignoring
     VertRefresh check for mode "1920x1080".
 The EDID for Samsung SA300/SA350 (DFP-0) contradicts itself
     mode "1280x720" is specified in the EDID; however, the
     EDID's valid VertRefresh range (56.000-75.000 Hz) would
     exclude this mode's VertRefresh (50.0 Hz); ignoring
     VertRefresh check for mode "1280x720".
 The EDID for Samsung SA300/SA350 (DFP-0) contradicts itself
     mode "720x576" is specified in the EDID; however, the
     EDID's valid VertRefresh range (56.000-75.000 Hz) would
     exclude this mode's VertRefresh (50.0 Hz); ignoring
     VertRefresh check for mode "720x576".

baris pertama adalah perintah. Perhatikan bahwa ini bukan cara resmi untuk mendapatkan informasi model / vendor dari monitor (tetapi yang tragis seringkali merupakan satu-satunya cara), juga tergantung pada vendor-vendor GPU.
thom

2
Terima kasih - melihat ke dalam /var/log/Xorg.0.logsebenarnya membantu - sangat disayangkan ini adalah satu-satunya cara.
icyrock.com

Saya menemukan howto: wiki.xbmc.org/...
thom

Terima kasih atas tautannya, ini terlihat menarik - saya akan memeriksanya.
icyrock.com

30

Ya ada, alat pengumpul informasi perangkat keras baca-edid untuk monitor VESA PnP . Alat ini memiliki dua perintah: get-ediddan parse-edid: alat untuk mengambil dan menafsirkan spesifikasi monitor menggunakan protokol VESA VBE DDC . EDID ( Extended Display Identification Data ) adalah format metadata untuk perangkat layar untuk menggambarkan kemampuannya ke sumber video.

Pertama:

sudo apt-get install read-edid

Lalu coba:

sudo get-edid | parse-edid

1
Terima kasih mereka - dapatkah Anda menjelaskan bagaimana saya bisa mendapatkan model monitor menggunakan get-edid/ parse-edid? Ketika saya menjalankan di atas, itu tidak mencetak apa pun (bahkan tidak di Bagian "Monitor") yang akan mirip dengan produsen / model monitor saya. Jika tidak apa-apa dengan Anda, dapatkah Anda menempelkan apa yang Anda dapatkan di mesin dan model monitor yang Anda miliki, hanya untuk perbandingan?
icyrock.com

Pengidentifikasi "\ QX: 2d40" VendorName "\ QX" ModelName "\ QX: 2d40" Saya harus mengatakan bahwa EDID monitor saya bermasalah. Jadi itu tidak benar-benar representatif :-)
thom

Terima kasih thom - terlihat mirip di ujung saya:, ModelName "LGD:8902"jadi sepertinya itu representatif setelah semua :) Juga, itu hanya menampilkan monitor laptop saya, tetapi tidak yang eksternal.
icyrock.com

Banyak EDID yang bermasalah. Pabrikan tidak peduli dan pembangun driver melakukan sebagian besar solusi. Info terbaik datang dari videodrivers sumber tertutup. Aku ekstrak seperti ini: grep "Display" /var/log/Xorg.0.log |tail -1untuk info luas saya menggunakangrep "NVIDIA(GPU-0)" /var/log/Xorg.0.log
thom

10

Jika get-edidtidak menunjukkan semua monitor. Seperti punyaku, aku punya:

$ lshw -c display
  *-display               
       description: VGA compatible controller
       product: 3rd Gen Core processor Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:27 memory:f6400000-f67fffff memory:e0000000-efffffff ioport:f000(size=64)

get-edid hanya menunjukkan monitor eksternal yang terhubung ke port VGA.

  1. Instal baca-edid

    sudo apt-get install read-edid
    
  2. Baca info edid langsung dari sysfs akan menampilkan semua monitor

    ls /sys/class/drm/*/edid | xargs -i{} sh -c "echo {}; parse-edid < {}"
    

8

Mencoba

xrandr

(Saya pernah menggunakan program ini ketika saya bermain dengan pengaturan dua monitor di Archlinux.)

Anda dapat menemukannya di x11-server-utilspaket. Paket itu berisi hal-hal lain untuk dimainkan seperti:

  • iceauth, alat untuk memanipulasi catatan otorisasi protokol ICE;
  • rgb;
  • sessreg, program sederhana untuk mengelola entri utmp / wtmp;
  • xcmsdb, utilitas karakteristik warna perangkat untuk Sistem Manajemen Warna X;
  • xgamma, alat untuk menanyakan dan mengatur koreksi gamma monitor;
  • xhost, program yang sangat berbahaya yang tidak boleh Anda gunakan;
  • xmodmap, sebuah utilitas untuk memodifikasi pemetaan tombol dan pemetaan tombol pointer di X;
  • xrandr, antarmuka baris perintah ke ekstensi RandR;
  • xrdb, alat untuk mengelola basis data sumber daya server X;
  • xrefresh, alat yang memaksa redraw layar X;
  • xset, alat untuk mengatur bermacam-macam parameter server X;
  • xsetmode dan xsetpointer, alat untuk menangani perangkat Input X;
  • xsetroot, alat untuk menyesuaikan tampilan jendela root;
  • xstdcmap, sebuah utilitas untuk secara selektif mendefinisikan properti colormap standar;
  • xvidtune, alat untuk menyesuaikan modelines X server untuk monitor Anda. (informasi ditemukan di pengelola paket sinaptik)

2
Terima kasih Frank - dapatkah Anda menjelaskan bagaimana cara menggunakan model monitor xrandr?
icyrock.com

ahah tidak pernah menggunakan xhost? mengapa
Jack

0

xrandr, xrandr --propdan xrandr --verboseakan memberi Anda beberapa informasi dengan tingkat detail berbeda.

Informasi yang disediakan produsen dapat ditemukan dalam format EDID .

Untuk mendapatkan dan mendekode EDID, periksa dulu xrandrkeluaran untuk mengetahui antarmuka yang digunakan (mis. EDP-1) dan apt install edid-decode, kemudian:

cat /sys/class/drm/card0-eDP-1/edid | edid-decode

Contoh output dapat Anda temukan di sini . Ganti eDP-1dengan antarmuka Anda jika perlu.

Atau, xrandr --propoutput EDID dalam format hex yang dapat Anda masukkan ke dekoder EDID online ini .

Saya tidak merekomendasikan menggunakan read-edidpaket karena saya punya pengalaman negatif dengannya (versi 3.0.2). Dalam kasus saya, get-edidmenampilkan karakter tambahan setelah akhir yang mengarah ke peringatan dari edid-decodedan parse-edidmenampilkan sampah ModelNamedan Identifierbidang acak .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.