тел. 8 917 186 46 79  ICQ: 576942540   mail: support@it-advisor.ru

Наcтройка широкоформатного монитора
(Пе­репе­чата­но из жур­на­ла "Ха­кер")

В один прек­расный день я ре­шил, что ши­роко­фор­матный мо­нитор бу­дет нам­но­го удоб­нее обыч­но­го. И не по­тому, что бо­тов в CS удоб­нее отс­тре­ливать или филь­мы смот­реть, - для ра­боты луч­ше. На ши­роком эк­ра­не мож­но без проб­лем раз­местить два отк­ры­тых ок­на тер­ми­нала, в од­ном на­бирать ко­ман­ду, а во вто­ром отс­ле­живать, что там пи­шут в ло­гах. А ес­ли ко все­му это­му де­лу еще один мо­нитор прик­ру­тить… Но об этом ни­же. Так­же се­год­ня про­да­ет­ся мно­го лэп­то­пов с ши­роким дисп­ле­ем, их поль­зо­вате­лям бу­дет по­лез­но уз­нать, как его наст­ро­ить.

По­чему-то все дист­ры, ко­торые мне по­пада­лись, сра­зу же но­рови­ли ус­та­новить од­но и то же раз­ре­шение - 1440x900, плюс в кон­фи­ге об­на­ружи­вал­ся спи­сок из вось­ми дру­гих ва­ри­ан­тов, но ни один из пред­ло­жен­ных мне не по­казал­ся удоб­ным. Уби­вало так­же, что при заг­рузке на мо­нито­ре пос­то­ян­но выс­ве­чива­лось пре­дуп­режде­ние о не­оп­ти­маль­нос­ти ре­жима, ко­торый ус­та­новил Х. В ме­ню гра­фичес­ких средств наст­рой­ки в Цент­ре KDE Sys­tem Set­ting нуж­но­го раз­ре­шения то­же не бы­ло (дист­ри­бутив KU­bun­tu), да и как мог­ло оно там ока­зать­ся, ес­ли у де­вело­перов ру­ки рас­тут не от­ку­да по­ложе­но. Ле­чит­ся это все очень прос­то. Отк­ры­ва­ем /etc/X11/xorg.conf (не за­бывая сох­ра­нить ори­гинал - он еще мо­жет по­надо­бить­ся) и пи­шем:

$ su­do mce­dit /etc/X11/xorg.conf

Sec­ti­on "Scre­en"

Iden­ti­fi­er "De­fa­ult Scre­en"

De­fa­ult­depth 24

Sub­Secti­on "Disp­lay"

Mo­des "1360x1024" "1024x768"

End­Sub­Secti­on

End­Sec­ti­on

Я ос­та­вил се­бе все­го два раз­ре­шения, ко­торые и ис­поль­зую. Ос­таль­ные уб­рал, что­бы X-сер­вер мень­ше ду­мал.

Па­раметр De­fa­ult­depth при­вел, что­бы по­казать, как уст­ра­нить еще од­ну ошиб­ку. Не знаю по­чему, но глу­бина цве­та у ме­ня по умол­ча­нию бы­ла ус­та­нов­ле­на в 16. Заг­ля­нув в лог /var/log/Xorg.0.log, я уви­дел со­об­ще­ние, что ви­де­окар­та не под­держи­ва­ет 16-бит­ный цвет с ре­комен­да­ци­ей ис­поль­зо­вать 24-бит­ный (что и бы­ло выс­тавле­но ав­то­мати­чес­ки):

(EE) fglrx(0): The RA­DE­ON V7000 chip­set do­es not sup­port depth 16. Using depth 24 ins­te­ad

(**) fglrx(0): Depth 24, (--) fra­mebuf­fer bpp 32

Пос­ле кор­ректи­ров­ки De­fa­ult­depth все приш­ло в нор­му, сер­вер пе­рес­тал нерв­ни­чать:

(**) fglrx(0): Depth 24, (--) fra­mebuf­fer bpp 32

(II) fglrx(0): Pi­xel depth = 24 bits sto­red in 4 by­tes (32 bpp pix­maps)

Но вер­немся к ши­роко­му эк­ра­ну. В боль­шинс­тве слу­ча­ев кор­ректи­ров­ки па­рамет­ров Mo­des долж­но хва­тить, но бы­ва­ет, что в Win­dows все ра­бота­ет как сле­ду­ет, а в Li­nux не­об­хо­димое раз­ре­шение ус­та­нав­ли­вать­ся ни­как не хо­чет. Это оз­на­ча­ет, что ав­то­мати­чес­ки сге­нери­рован­ный ре­жим ра­боты Mo­deLi­ne не под­хо­дит. В та­ком слу­чае нуж­ные циф­ры при­дет­ся впи­сывать са­мому. Уз­нать ис­поль­зу­емые по умол­ча­нию мож­но, заг­ля­нув в ло­ги:

(II) fglrx(0): Sup­ported Fu­ture Vi­deo Mo­des:

(II) fglrx(0): #0: hsi­ze: 1440 vsi­ze 900 ref­resh: 60 vid: 149

(II) fglrx(0): #1: hsi­ze: 1440 vsi­ze 900 ref­resh: 75 vid: 3989

(II) fglrx(0): #2: hsi­ze: 1280 vsi­ze 1024 ref­resh: 60 vid: 32897

(II) fglrx(0): #3: hsi­ze: 1280 vsi­ze 960 ref­resh: 60 vid: 16513

(II) fglrx(0): #4: hsi­ze: 1152 vsi­ze 864 ref­resh: 75 vid: 20337

(II) fglrx(0): Sup­ported ad­di­ti­onal Vi­deo Mo­de:

(II) fglrx(0): clock: 106.5 MHz Ima­ge Si­ze: 410 x 257 mm

(II) fglrx(0): h_ac­ti­ve: 1440 h_sync: 1520 h_sync_end 1672 h_blank_end 1904 h_bor­der: 0

(II) fglrx(0): v_ac­ti­ve: 900 v_sync: 903 v_sync_end 909 v_blan­king: 934 v_bor­der: 0

(II) fglrx(0): Ran­ges: V min: 56 V max: 75 Hz, H min: 30 H max: 81 kHz, PixC­lock max 140 MHz

То есть сек­ция Mo­nitor со стро­кой Mo­deLi­ne, ус­та­нов­ленная по умол­ча­нию, выг­ля­дит так:

$ su­do mce­dit /etc/X11/xorg.conf

Sec­ti­on "Mo­nitor"

Iden­ti­fi­er "Sync­Mas­ter"

Op­ti­on "DPMS"

# "ре­жим" clock h_ac­ti­ve h_sync h_sync_end h_blank_end v_ac­ti­ve v_sync v_sync_end v_blan­king

Mo­deLi­ne "1440x900" 106.5 1440 1520 1672 1904 900 903 909 934

End­Sec­ti­on

Что­бы вруч­ную не иг­рать­ся па­рамет­ра­ми, мож­но ис­поль­зо­вать гра­фичес­кие ути­литы xvid­tu­ne и re­ad-edid, а так­же он­лайн-каль­ку­лято­ры Mo­deLi­ne, нап­ри­мер xti­ming.so­ur­ce­for­ge.net/cgi-bin/xti­ming.pl. Под­робнос­ти о Mo­deLi­ne смот­ри в XFree86-Vi­deo-Ti­mings-HOW­TO (www.open­net.ru/docs/HOW­TO-RU/XFree86-Vi­deo-Ti­mings-HOW­TO.html).

Есть еще од­на по­лез­ная ути­лита, вхо­дящая в сос­тав X, – xrandr (в KDE есть ана­лог krandr), ко­торая поз­во­ля­ет на ле­ту из­ме­нять раз­ре­шение и час­то­ту раз­верт­ки без пе­реза­пус­ка X-сер­ве­ра. Дос­тупные ре­жимы в ви­де пар «час­то­та/раз­ре­шение» мож­но по­лучить, вве­дя:

$ xrandr –q

Ин­декс в пер­вом столб­це по­дой­дет в ка­чест­ве па­рамет­ра вмес­то раз­ре­шения.

В не­кото­рых слу­ча­ях драй­вер не хо­чет ус­та­нав­ли­вать нуж­ное раз­ре­шение:

$ xrandr -s 1360x1024

Si­ze 1360x1024 not fo­und in ava­ilab­le mo­des

Тог­да мож­но прос­то отк­лю­чить тес­ти­рова­ние дос­тупных ре­жимов, ука­зав в сек­ции De­vice:

Op­ti­on "Mo­deVa­lida­ti­on" "No­MaxPClkCheck"

Не­кото­рые мо­нито­ры име­ют еще од­ну по­лез­ную функ­цию - по­ворот вок­руг оси. Ра­ботать с текс­том при вер­ти­каль­ном по­ложе­нии эк­ра­на очень удоб­но. В Li­nux та­кая воз­можность то­же под­держи­ва­ет­ся. Ре­али­зовать ее мож­но дву­мя спо­соба­ми: ав­то­мати­чес­ки и вруч­ную. В пер­вом слу­чае до­бав­ля­ем в сек­цию De­vice па­раметр:

Op­ti­on "Rand­RRo­tati­on" "on"

Или

Op­ti­on "Ro­tate" "CCW" # воз­можно зна­чение "CW"

Для по­воро­та в руч­ном ре­жиме ис­поль­зу­ем тот же xrandr с па­рамет­ром '–o' (--ori­en­ta­ti­on) и ука­зани­ем нап­равле­ния (nor­mal, in­verted, left, right, 0, 1, 2, 3):

$ xrandr -o left