حل مشکل تغییر رزولوشن مانیتور در اوبونتو

با نام خدا وسلام، خب مشکل من این بود که وقتی مانیتور رو به لپتاپم وصل می کردم، حداکثر رزولوشنی که برای مانیتور میاورد ۱۰۲۴*۷۶۸ بود، ولی میدونستم که مانیتورم رزولوشن ۱۹۲۰*۱۰۸۰ رو نیز پشتیبانی می کنه و رزولوشن پایین اذیتم می کرد.

اما راه حل،

اول از همه باید WAYLAND را غیر فعال کنیم. برای این کار باید به آدرس زیر رفته و یک خط از این فایل را از comment در بیارید:

/etc/gdm3/custom.conf  

برای تغییرات این فایل داخل ترمینال کافیه دستور زیر رو بزنید :

sudo nano/etc/gdm3/custom.conf

حال دنبال خط زیر بگردید و اون علامت مربع یا شارپ (#) رو پاک کنید.

#WaylandEnable=false 

سیستم رو ریست کنید.

خب همون طور که گفتم من میخواستم رزولوشن رو ۱۹۲۰*۱۰۸۰ کنم برای همین اول دستور زیر رو زدم (با توجه به رزولوشن مورد نظرتون دستور رو تغییر بدید)

cvt 1920 1080 60

تصویر ترمینال:

خب با توجه به تصویر فوق می بینید که خروجی دستور بالا میشه :

# 1920×1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz Modeline “1920x1080_60.00” 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

ما از ” به بعد را نیاز داریم که میشه :

“1920x1080_60.00” 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

حالا باید یه مود جدید با استفاده از xrandr بسازیم، دستور زیر را داخل ترمینال بزنید:

xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync 

 

حال با استفاده  از دسترو زیر می توینم لیست تمامی صفحات نمایش متصل شده به سیستم رو به دست بیاریم:

xrandr --query | grep connected

خروجی دستور بالا چیزی شبیه تصویر زیر میشه:

مانیتور من میشه DP-2 که باهاش کار دارم.دستور زیر را داخل ترمینال می زنیم:

xrandr --addmode DP-2 "1920x1080_60.00"

 

و در انتها دستور زیر دیگه کار تمامه

xrandr --output DP-2 --mode "1920x1080_60.00"

 

و اما یه مشکل دیگه وجود داره و اینه که اگه سیستم را ریست کنیم تمام تغییرات میپره و مجدد باید دستورات بالا رو اجرا کنیم.

راه حل:

اول از همه داخل یه فولدر با دستور زیر یه فایل بسازید به نام fix_resolution:

touch fix_resolution.sh

با توجه به دستوراتی که بالا زدم، داخل فایلی که ساختید، شوید و خطوط زیر را داخلش بنویسید،  (با  استفاده از دستور :   nano fix_resolution.sh)

#!/bin/sh
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 11$
xrandr --addmode DP-2 "1920x1080_60.00"
xrandr --output DP-2 --mode "1920x1080_60.00"

 

تغییر رزولوشن در اوبونتو
تغییر رزولوشن در اوبونتو

 

حال فایلی که د ربالا ساختید رو باید دارای قابلیت اجرا باشد، برای اینکار دستور زیر را در ترمینال بزنید: (اسم فولدر و فایل با توجه به سیستم خودتونه 🙂  )

chmod +x /home/sadegh_khan/fix-resolution.sh

وارد قسمت show application سیستم اوبونتو خود بشید (تصویر زیر) و در قسمت search عبارت startup  رو جستجو کنید و برنامه startup application رو اجرا کنید.

پس از باز شدن برنامه (مانند تصویر زیر)، روی add کلیک کرده و یه اسم انتخاب و همون فایلی که ساختید را نیز برایش browseکنید. و تمام 🙂

ویرایش:

خب امروز ۲۲ اسفند ۹۷ و دو تا نکته دیگه به این مطلب اضافه کردم

اولین نکته برای تعیین موقعیت مانیتور ها نسبت به هم هست، برای این کار از دستور زیر استفاده می کنیم :

xrandr --output DP-2 --pos <x>x<y>

برای مثال دو تا مانیتور داریم که مانیتور a سمت چپ قرار داره و باید اصولا ماوس رو وقتی به سمت راست تصویر مانیتور a که ببریم از مانیتور a خارج و به مانیتور b که سمت راست مانیتور a بوده برویم. حال اگه این اتفاق نمی افتاد و برعکس بود، وقتی به سمت چپ مانیتور a رفتیم وارد مانیتور bبشود، برای حل مشکل از دستور فوق باید استفاده کنیم.

نکته دوم د رمورد انتخاب مانیتور دلخواه شما به عنوان مانیتور rimary می باشد، برای این کار صرفا کافیه از دستور زیر استفاده کنید :

xrandr --output DP-2 --primary

حال اون فایلی که برای تغییرات مانیتور ساخته بودم تا به صورت استارتآپ لینوکس تغییرات اعمال بشه به صورت زیر در اومده :

#!/bin/sh
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync 
xrandr --addmode DP-2 "1920x1080_60.00"
xrandr --output DP-2 --mode "1920x1080_60.00" --pos 0x0 --primary
xrandr --output eDP-1 --pos 1920x0

در انتها به اینجا نیز میتونید یه نگاهی بی اندازید.

همچنین دیگر مطالب در ارتباط با لینوکسدر بلاگ صادق خان را اینجا میتوانید ببینید.