如何更改第二台顯示器的解析度?
我的 PC 上安裝了 Linux Mint 20。拜託,請不要將其標記為重複,我知道人們到處都問過這個問題,但相信我,他們的解決方案不起作用。所以,我有兩台顯示器,一台以 1366x768 執行,這是我的主要一台,另一台以 1360x768 執行。前者沒有問題,後者只顯示 1024x768 和 800x600 解析度,無法設置它的實際原生解析度。我有一個英特爾集成 GPU。所以我搜尋了一下,發現了一些涉及 xrandr 的解決方案。他們說使用 cvt 來獲取 Modelline (????) 並使用 xrandr 將其添加到解析度列表中。起初這是可行的,但是當解析度出現在列表中時,選擇它會顯示顯示向左移動了一點,因此螢幕被切斷並且右側有黑色空間(我無法用滑鼠懸停, 提個醒)。
它涉及關閉 Xserver 並創建一個 x 配置文件,然後我們可以將“Modelline”行添加到“Monitor”部分。他還解釋說,我們應該在每個“螢幕”部分和子部分添加一行,上面寫著“模式 1360x768”。所以我做了。之後,我不得不將文件移動到 /etc/X11 ……這完全沒有做任何事情。
再次與 xrandr 混在一起,我發現以前可以使用的命令現在不起作用。他們給了我以下錯誤:
X Error of failed request: BadName (named color or font does not exist) Major opcode of failed request: 140 (RANDR) Minor opcode of failed request: 16 (RRCreateMode) Serial number of failed request: 45 Current serial number in output stream: 45
所以我現在什至不能使用它。然後我的主顯示器開始亂了,螢幕移到螢幕中央,旁邊還有一個副本,像馬賽克一樣。我不得不重新啟動 lightdm 服務幾次並編輯我的 .xprofile 文件以使其恢復正常……我們到了。
為什麼改變顯示器的解析度這麼難?我真的很想喜歡 linux,但我找不到任何合理的解釋來解釋為什麼會在 2020 年出現這種情況。
所以,Modelline 是一個字元串,它指定了一系列解析度的細節,比如偏移量、解析度本身以及其他一些東西。添加解析度分為三個步驟,首先使用給定的 Modelline 創建一個新模式
xrandr --newmode <modeline>
,然後,將新創建的模式添加到某個顯示適配器,您可以獲得顯示適配器列表和連接的顯示適配器列表xrandr
。然後,添加模式使用xrandr --admode <adapter> <mode>
. 因此,如果模式名為“1360x768”,而顯示適配器的名稱是 VGA-1,則命令如下所示:xrandr --addmode VGA-1 1360x768
然後你只需設置它
xrandr --output VGA-1 --mode 1360x768
那應該這樣做。
我得到黑條和其他東西的原因是我使用的 Modelline 不適合我的顯示。我在這個 modeline 數據庫中找到了一個合適的,特別是這個modeline
"1360x768" 85.500 1360 1424 1536 1792 768 771 777 795 +Hsync +Vsync
。模式行的引用部分是名稱。您可以將其更改為任何內容。之後我收到錯誤的原因是已經有一個同名的模式(我試圖添加另一個同名的模式行,所以它不起作用)。這應該涵蓋這裡的所有內容。
所以,這個問題源於我之前對它如何工作的無知,希望它對某人有所幫助。