6.4. X11-н тохируулга

Хамтран бичсэн Кристофер Шамвэй.

6.4.1. Тохируулж эхлэхээс өмнө

Ихэнх тохиолдолд X11 нь өөрөө тохируулагддаг. Хуучин болон ердийн биш төхөөрөмжтэй хүмүүс тохируулахаасаа өмнө тоног төхөөрөмжийн талаар мэдээлэл цуглуулах нь хэрэгтэй байж магадгүй юм.

Дэлгэцийн нягтрал ба зурах давтамж нь мониторын хэвтээ ба босоо давтамжуудаас хамаардаг. Бараг бүх мониторууд эдгээрийг электроноор автоматаар илрүүлэх дэмжлэгтэй байдаг. Цөөн мониторууд эдгээр утгуудгүй байдаг бөгөөд хэвлэсэн гарын авлага болон үйлдвэрлэгчийн вэб сайтаас үзүүлэлтүүдийг олж авах хэрэгтэй.

Видео картын бичих схемийг бас автоматаар илрүүлдэг бөгөөд энэ нь зөв видео драйвер сонгоход ашиглагддаг. Хүссэн үр дүнд автоматаар илрүүлэх явц хүргэхгүй бол хэрэглэгчийн хувьд ямар бичил схем суулгагдсан болохыг мэдэх нь хэрэг болдог.

Видео картын санах ой максимум нягтрал ба үзүүлж болох өнгөний гүнг тодорхойлдог.

6.4.2. X11-н тохиргоо

Гар болон хулганыг автоматаар танихын тулд Xorg нь HAL-ийг ашигладаг. sysutils/hal болон devel/dbus портууд нь x11/xorg-ийн хамаарал болон суудаг боловч тэдгээрийг /etc/rc.conf файл дахь дараах оруулгуудыг засварлан идэвхжүүлэх ёстой:

hald_enable="YES"
dbus_enable="YES"

Эдгээр үйлчилгээнүүдийг дараа дараачийн Xorg тохиргоог оролдох эсвэл ашиглахаасаа өмнө эхлүүлсэн байх шаардлагатай (гараар эсвэл дахин ачаалах замаар).

Xorg нь ямар нэг тохиргооны алхмуудыг цааш хийлгүйгээр дараах тушаалыг бичин ихэвчлэн ажилладаг:

% startx

Автомат тохиргоо нь зарим нэг тоног төхөөрөмжийн хувьд ажиллахгүй байх юм уу эсвэл зарим нэг зүйлсийг хүссэнээр тэр бүр тохируулж чаддаггүй. Энэ тохиолдлуудад гараар тохиргоог хийх шаардлагатай.

Тэмдэглэл: GNOME, KDE эсвэл Xfce зэрэг ширээний орчнууд нь хэрэглэгчид нягтрал зэрэг дэлгэцийн өгөгдлүүдийг хялбарханаар тохируулах боломж бүхий хэрэгслүүдтэй. Хэрэв анхдагч тохиргоог хүлээн авах боломжгүй бөгөөд та ширээний орчин суулгахаар шийдсэн бол ширээний орчны суулгалтыг үргэлжлүүлж тохирох дэлгэц тохируулах хэрэгслийг ашиглаарай.

X11-г тохируулах нь олон үе шаттай явц билээ. Хамгийн эхний алхам бол анхдагч тохируулгын файлыг бэлдэх билээ. Супер хэрэглэгчийн эрхээр ердөө л дараах тушаалыг өгнө:

# Xorg -configure

Ингэснээр /root сан дотор xorg.conf.new гэсэн нэртэй Х11 ийн тохиргооны үндсэн файл үүсгэгддэг (та su(1) тушаалаар юм уу эсвэл анхнаасаа супер хэрэглэгчийн эрхээр орсон байсан ч супер хэрэглэгчийн $HOME буюу эх сан дотор үүсгэх болно). Х11 гуай тухайн систем дээр байгаа график төхөөрөмжийг таних оролдлого хийж таниулах програмын мэдээллийг уг тохируулга руу бичдэг.

Дараагийн алхам бол уг тохируулга файлыг ашиглаад график төхөөрөмжтэй Xorg ажиллаж чадаж байгааг турших юм. Дараах тушаалыг оруулах хэрэгтэй:

# Xorg -config xorg.conf.new -retro

Хэрэв хар саарал дэвсгэр дээр Х хэлбэртэй хулганы заагч харагдаж байвал амжилттай боллоо гэсэн үг. Туршилтаас гарахын тулд эхлүүлсэн виртуал консол руу Ctrl+Alt+Fn (эхний виртуал консолын хувьд F1) товчлууруудын хослолыг дарж шилжин Ctrl+C дарна.

Тэмдэглэл: Ctrl+Alt+Backspace товчлууруудын хослолыг ашиглан Xorg-с бас гарч болно. Үүнийг идэвхжүүлэхийн тулд дараах тушаалыг дурын X терминал эмулятороос оруулж болно:

% setxkbmap -option terminate:ctrl_alt_bksp

Эсвэл hald-д зориулсан гарын тохиргооны файл x11-input.fdi/usr/local/etc/hal/fdi/policy санд үүсгэн хадгалж болно. Энэ файл нь дараах мөрүүдтэй байх ёстой:

<?xml version="1.0" encoding="iso-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keyboard">
	  <merge key="input.x11_options.XkbOptions" type="string">terminate:ctrl_alt_bksp</merge>
    </match>
  </device>
</deviceinfo>

Та hald-гээр энэ файлыг уншуулахын тулд өөрийн машиныг дахин ачаалах хэрэгтэй болно.

Дараах мөрийг xorg.conf.new файлын ServerLayout эсвэл ServerFlags хэсэгт нэмж өгөх ёстой болно:

Option	"DontZap"	"off"

Хэрэв хулгана ажиллахгүй байвал өмнөх туршилтыг дахин хийхээсээ өмнө хулганаа тохируулах шаардлагатай. FreeBSD-г суулгах бүлэгт буй Хэсэг 3.10.10 хэсгээс харна уу. Сүүлийн үеийн Xorg-с эхлээд xorg.conf файл дахь InputDevice хэсгүүдээс автоматаар илрүүлсэн төхөөрөмжүүдийг илүүд үздэг. Хуучин байдалд нь эргүүлж оруулахын тулд дараах мөрийг энэ файлын ServerLayout эсвэл ServerFlags хэсэгт нэмэх хэрэгтэй:

Option "AutoAddDevices" "false"

Оролтын төхөөрөмжүүдийг дараа нь урьдны хувилбаруудад хийсний нэгэн адилаар хэрэгцээтэй бусад тохируулгуудын (жишээ нь гарын байрлалыг сэлгэх) хамтаар тохируулж болдог.

Тэмдэглэл: Өмнө тайлбарласны адил анхдагчаар hald демон таны гарыг автоматаар мэдэх болно. Таны гарын байрлал эсвэл загвар зөв биш байж болох боловч GNOME, KDE эсвэл Xfce зэрэг ширээний орчнууд гарыг тохируулах хэрэгслүүдтэй байдаг. Гэхдээ гарын тохиргоог setxkbmap(1) хэрэгсэл эсвэл hald-ийн тохиргооны дүрмийн тусламжтайгаар шууд тохируулах боломжтой байдаг.

Жишээ нь хэрэв Франц байрлалтай PC 102 товчлууртай гарыг хэн нэгэн ашиглахыг хүсэж байгаа бол hald-д зориулсан x11-input.fdi гэсэн гарын тохиргооны файлыг үүсгэж /usr/local/etc/hal/fdi/policy санд хадгалах хэрэгтэй. Энэ файл нь дараах мөрүүдийг агуулсан байх ёстой:

<?xml version="1.0" encoding="iso-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keyboard">
	  <merge key="input.x11_options.XkbModel" type="string">pc102</merge>
	  <merge key="input.x11_options.XkbLayout" type="string">fr</merge>
    </match>
  </device>
</deviceinfo>

Хэрэв энэ файл байгаа бол хуулаад гарын тохиргооны мөрүүдийг өөрийн файлдаа нэмэх хэрэгтэй.

hald-ээр энэ файлыг уншуулахын тулд та өөрийн машиныг дахин ачаалах хэрэгтэй.

Адил тохиргоог X терминалаас эсвэл энэ тушаалын мөрөөс скриптээр хийх боломжтой:

% setxkbmap -model pc102 -layout fr

/usr/local/share/X11/xkb/rules/base.lst файл нь төрөл бүрийн боломжит гар, байрлал, сонголтуудыг харуулдаг.

xorg.conf.new файлыг одоо өөрийнхөө хүсэлд тохируулан сайжруулах хэрэгтэй. Уг файлыг emacs(1) эсвэл ee(1) зэрэг засварлагчаар нээнэ. Хэрэв монитор хуучны эсвэл давтамжийг автоматаар мэдэрдэг ердийнх шиг биш бол xorg.conf.new файл дотор "Monitor" гэсэн хэсэгт оруулж өгөөрэй:

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
        HorizSync    30-107
        VertRefresh  48-120
EndSection

Ихэнх мониторууд давтамжийг автоматаар мэдэрдэг бөгөөд гараар оруулах заавал шаардлагагүй. Автоматаар мэдэрдэг дэмжлэг байхгүй шинэ мониторуудын хувьд үйлдвэрлэгчээс зөвхөн зааж өгсөн утгуудыг оруулж эвдрэлээр сэргийлээрэй.

X нь DPMS (Тэжээл хэмнэх) чадвартай дэлгэцийг дэмждэг. xset(1) програм цаг дуусах нөхцлийг шалгаад дэлгэцийг standby, suspend, эсвэл off буюу нөөц, түр салгах, эсвэл унтраах зэрэг горимд шилжүүлдэг. Хэрэв та дэлгэцэндээ DPMS шинж чанарыг хэрэгжүүлнэ гэж бодож байвал дараах мөрийг monitor хэсэгт нэмэх хэрэгтэй:


        Option       "DPMS"

Та xorg.conf.new файлыг засварлагч дээр нээсэн хэвээр байгаа болохоор дэлгэцийн зуралтын хэмжээ болон өнгөний нягтыг оруулж өгч болно. Эдгээр утгыг "Screen" хэсэгт оруулдаг:

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        DefaultDepth 24
        SubSection "Display"
                Viewport  0 0
                Depth     24
                Modes     "1024x768"
        EndSubSection
EndSection

DefaultDepth-д өгсөн утга нь анхдагч хэрэглэх өнгөний нягт юм. Хэрэв анхдагч утгыг нь ачаалах үед дарж өөрчлөж хэрэглэнэ гэвэл Xorg(1)-г ажиллуулах тушаалд -depth гэсэн сонголтыг хүссэн утгатай хамт оруулан хэрэглэж болно. Modes гэсэн түлхүүр үг нь заасан өнгөтэй үеийн дэлгэцийн зурах хэмжээг зааж байдаг. Тухайн график дүрслэгчийн үйлдвэрлэгчээс зааж өгсөн стандарт VESA горимууд л зөвшөөрөгдсөн гэдгийг анхаарна уу. Дээрх жишээн дээр дэлгэцийн анхдагч өнгөний нягт нь нэг цэгийг хорин дөрвөн битээр илэрхийлнэ гэж заасан байгаа бөгөөд ийм нягтшилтай үедээ өргөөшөө 1024, өндрөөшөө 768 цэгээр зурж харуул хэмээн зааж өгөв.

Эцэст нь тохируулгын файлаа хадгалаад өмнө заасны дагуу дахин турших хэрэгтэй.

Тэмдэглэл: Хүндрэл гарсан үед танд хэрэгтэй нэг хэрэгсэл бол Х11-ийн log буюу бүртгэл тэмдэглэлийн файл юм. Энэ файлд Х11-д залгагдсан төхөөрөмжийн тухай мэдээллүүд оршиж байдаг. Xorg-н бүртгэл тэмдэглэлийн нэрний загвар нь /var/log/Xorg.0.log хэлбэртэй байдаг. Энэ файлын жинхэнэ нэр нь Xorg.0.log-оос Xorg.8.log-н хооронд өөрчлөгдөж байдаг.

Хэрэв бүх зүйл сайн болж өнгөрсөн бол тохируулгын файлаа Xorg(1)-д олдох газарт байрлуулах хэрэгтэй. Үүнийг голдуу /etc/X11/xorg.conf эсвэл /usr/local/etc/X11/xorg.conf гэсэн байрлалд хуулдаг.

# cp xorg.conf.new /etc/X11/xorg.conf

X11-г тохируулах явц ингээд гүйцлээ. Xorg-г та одоо startx(1) хэрэгслээр эхлүүлж болно. Х11 сервер нь мөн xdm(1)-р эхлүүлэгдэж болдог.

6.4.3. Нэмэгдэл тохиргоо

6.4.3.1. Intel® i810 Graphics Chipsets-г тохируулах

Intel® i810 integrated chipsets төрлийн график дүрслэгчдийг тохируулахын тулд agpgart AGP програмууд X11-д хэрэгтэй байдаг. agp(4)-н драйверийн гарын авлагаас нэмэгдэл мэдээллийг хараарай.

Энэ нь мөн бусад график хавтангуудын төхөөрөмжийг тохируулахад хэрэглэгддэг. Системийнхээ цөмд agp(4) драйверийг оруулж хөрвүүлээгүй бол kldload(8) тушаалаар драйверийг дуудсан үед ажиллахгүй гэдгийг анхаарна уу. Уг драйвер анхнаасаа цөмд оруулж бэлтгэгдсэн байх ёстой юм уу эсвэл ачаалах үед /boot/loader.conf-р цөмд нэмэгдсэн байх ёстой.

6.4.3.2. Өргөн дэлгэцийн горим нэмэх

Энэ хэсэгт таныг тохируулгын жаахан илүү мэдлэгтэй гэж үзэх болно. Мөн энэ хэсэгт дээр өгүүлсэн ердийн тохиргоо хийхийг авч үзэхгүй. Бүртгэл мэдээллийн файлыг ашиглаж тохиргоог ямар нэгэн аргаар дуусгаж болно. Хамгийн багадаа текст засварлагч байхад л уг тохируулгыг хийж болох хангалттай.

16:10 болон 10:9 зэрэг харуулах харьцааг дэмждэг одоогийн өргөн дэлцгэцүүд (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+, гэх мэт) жаахан хүндрэлтэй байж болзошгүй. Зарим төрлийн 16:10 харуулах харьцаануудыг дурдвал:

  • 2560x1600

  • 1920x1200

  • 1680x1050

  • 1440x900

  • 1280x800

Зарим тохиолдолд Section "Screen" хэсгийн Mode хэсэгт эдгээр харьцаануудын нэгийг бичсэнээр тохиргоог амархан гүйцээж болдог:

Section "Screen"
Identifier "Screen0"
Device     "Card0"
Monitor    "Monitor0"
DefaultDepth 24
SubSection "Display"
	Viewport  0 0
	Depth     24
	Modes     "1680x1050"
EndSubSection
EndSection

Xorg нь тухайн өргөн дэлгэцээс I2C/DDC мэдээллийг нь авах ухаантай болохоор уг дэлгэцийн харгалзах зуралтын давтамжийг нь мэдэж чаддаг.

Хэрэв эдгээр ModeLines-ууд нь драйвер дотор байхгүй байвал Xorg танд жаахан тусламж өгч чаддаг. /var/log/Xorg.0.log файлаас ажиллаж болох ModeLine-уудыг харж болно. Дараах шиг мөрийн хэсгүүдийг харах хэрэгтэй:

(II) MGA(0): Supported additional Video Mode:
(II) MGA(0): clock: 146.2 MHz   Image Size:  433 x 271 mm
(II) MGA(0): h_active: 1680  h_sync: 1784  h_sync_end 1960 h_blank_end 2240 h_border: 0
(II) MGA(0): v_active: 1050  v_sync: 1053  v_sync_end 1059 v_blanking: 1089 v_border: 0
(II) MGA(0): Ranges: V min: 48  V max: 85 Hz, H min: 30  H max: 94 kHz, PixClock max 170 MHz

Энэ мэдээллийг EDID мэдээлэл гэдэг. Үүгээр ModeLine мөрийг үүсгэхийн тулд ердөө л тэдгээрийг зөв дарааллаар нь оруулж бичихэд хангалттай:

ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings>

Тэгэхээр дээр жишээний дагуу Section "Monitor" хэсэгт ModeLine мөрийг дараах маягаар оруулна:

Section "Monitor"
Identifier      "Monitor1"
VendorName      "Bigname"
ModelName       "BestModel"
ModeLine        "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089
Option          "DPMS"
EndSection

Ингэж энгийн засварлалт хийж дуусгаад Х-ийг өргөн дэлгэцтэй нь шинээр ажиллуулж болно.

Энэ болон бусад баримтуудыг ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ хаягаас татаж авч болно.

FreeBSD-ийн талаар <questions@FreeBSD.org> хаягтай холбоо барихаасаа өмнө баримтыг уншина уу.
Энэ бичиг баримттай холбоотой асуулт байвал <doc@FreeBSD.org> хаягаар цахим захидал явуулна уу.
Энэ бичиг баримтын орчуулгатай холбоотой асуулт байвал <admin@mnbsd.org> хаягаар цахим захидал явуулна уу.