# Упутство за Гномовог управника приказа

## Термини и конвенције коришћени у овом упутству

Ово упутство описује издање 2.26.0 Гномовог управника приказа. Последњи пут је ажурирано 10. 2. 2009.

Бирач — Програм који се користи за избор удаљеног домаћина за управљање приказом на даљину на прикаченом приказу (`gdm-host-chooser`).

FreeDesktop — Организација која обезбеђује стандарде радне површине, као што је Спецификација уноса радне површине коју користи ГДМ. https://www.freedesktop.org.

ГДМ — Гномов управник приказа. Користи се за описивање софтверског пакета у целини.

Позивник — Графички прозор за пријаву (који обезбеђује `gnome-shell`).

ПАМ — Прикључни механизам потврде идентитета (Pluggable Authentication Mechanism)

XDMCP — Протокол управљања Икс приказом (X Display Manager Control Protocol)

Икс-сервер — примена Икс система прозора. На пример, Xorg Икс-сервер који обезбеђује Задужбина X.org https://www.x.org.

Путање које почињу речју у угаоним заградама су релативне у односу на инсталациони префикс. Тј. `<share>/pixmaps/` се односи на `/usr/share/pixmaps` ако је ГДМ подешен са `--prefix=/usr`.

## Преглед

### Увод

Гномов управник приказа (ГДМ) је управник приказа који примењује све значајне могућности потребне за управљање прикљученим и удаљеним екранима. ГДМ је написан из почетка и не садржи никакав XDM или код X конзорцијума.

Имајте на уму да је ГДМ подесив и да многа подешавања конфигурације утичу на безбедност. Проблеми на које треба обратити пажњу су истакнути у овом документу.

Имајте на уму да неки оперативни системи подешавају ГДМ да се понаша другачије од подразумеваних вредности описаних у овом документу. Ако се чини да се ГДМ не понаша као што је документовано, проверите да ли је нека повезана конфигурација можда другачија од овде описане.

За даље информације о ГДМ-у, погледајте веб страницу пројекта.

За дискусију или питања о ГДМ-у, погледајте форум за дискусију на https://discourse.gnome.org/tag/gdm. Архиве претходне дописне листе су такође добар извор за тражење одговора на уобичајена питања. Листа је архивирана на https://mail.gnome.org/archives/gdm-list/ и има могућност претраге порука по кључним речима.

Пошаљите све извештаје о грешкама или захтеве за побољшања на https://gitlab.gnome.org/GNOME/gdm/-/issues/.

### Стабилност прочеља

ГДМ 2.20 и ранији су подржавали стабилна прочеља за подешавање. Међутим, код је потпуно поново написан за ГДМ 2.22 и није потпуно уназад компатибилан са старијим издањима. То је делом зато што ствари раде другачије, па неке опције једноставно немају смисла, делом зато што неке опције никада нису имале смисла, а делом зато што нека функционалност још није поново примењена.

Прочеља која се и даље подржавају на стабилан начин укључују скрипте Init, PreSession, PostSession, PostLogin и Xsession. Неке опције подешавања позадинског програма у датотеци `<etc>/gdm/custom.conf` се и даље подржавају. Такође, `~/.dmrc` и локације слика у прегледачу лица су и даље подржане.

ГДМ 2.20 и ранији су подржавали могућност управљања вишеструким екранима са засебним графичким картицама, као што се користи у окружењима терминалских сервера, пријаву у прозору преко програма као што су Xnest или Xephyr, програм gdmsetup, теме поздравног екрана засноване на XML-у и могућност покретања XDMCP бирача са екрана за пријаву. Ове могућности нису враћене током поновног писања верзије 2.22.

### Функционални опис

ГДМ је одговоран за управљање екранима на систему. Ово укључује потврду идентитета корисника, покретање корисничке сесије и прекидање корисничке сесије. ГДМ је подесив, а начини на које се може подесити описани су у одељку „Подешавање ГДМ-а“ овог документа. ГДМ је такође приступачан корисницима са инвалидитетом.

ГДМ пружа могућност управљања главним екраном конзоле и екранима покренутим преко ВТ-а. Интегрисан је са другим програмима, као што су програмче за брзу промену корисника (FUSA) и gnome-screensaver за управљање вишеструким екранима на конзоли преко прочеља виртуелног терминала (ВТ) Икс-сервера. Такође може да управља XDMCP екранима.

Без обзира на врсту екрана, ГДМ ће урадити следеће када управља екраном. Покренуће процес Икс-сервера, затим покренути скрипту `Init` као коренски корисник и покренути поздравни програм на екрану.

Поздравни програм се покреће као неповлашћени корисник/група „gdm“. Овај корисник и група су описани у одељку „Безбедност“ овог документа. Главне функције поздравног програма су да обезбеди механизам за избор налога за пријаву и да води дијалог између корисника и система приликом потврде идентитета тог налога. Процес потврде идентитета воде прикључни модули за потврду идентитета (PAM). PAM модули одређују који упити (ако их има) се приказују кориснику ради потврде идентитета. На просечном систему, поздравни програм ће захтевати корисничко име и лозинку за потврту идентитета. Међутим, неки системи могу бити подешени да користе додатне механизме као што су отисак прста или читачи паметних картица. ГДМ се може подесити да подржава ове алтернативе паралелно са проширењима за пријаву поздравног програма и опцијом `--enable-split-authentication` `./configure`, или једну по једну путем системског PAM подешавања.

Проширење за паметне картице се може омогућити или онемогућити путем кључа г-подешавања `org.gnome.display-manager.extensions.smartcard.active`.

Слично томе, проширење за отисак прста се може омогућити или онемогућити путем кључа г-подешавања `org.gnome.display-manager.extensions.fingerprint.active`.

ГДМ и PAM се могу подесити тако да не захтевају никакав унос, што ће довести до тога да се ГДМ аутоматски пријави и једноставно покрене сесију, што може бити корисно за нека окружења, као што су једнокориснички системи или киосци.

Поред потвредe идентитета, програм за поздрављање омогућава кориснику да изабере коју сесију ће покренути и који језик ће користити. Сесије су дефинисане датотекама које се завршавају суфиксом .desktop, а више информација о овим датотекама можете пронаћи у одељку „Подешавање ГДМ корисничке сесије и језика“ овог документа. Подразумевано, ГДМ је подешен да приказује прегледач лица како би корисник могао да изабере свој кориснички налог кликом на слику уместо да мора да куца своје корисничко име. ГДМ прати подразумевану сесију и језик корисника у корисничкој датотеци `~/.dmrc` и користиће ове подразумеване вредности ако корисник није изабрао сесију или језик у графичком прочељу за пријаву.

Након потврде идентитета корисника, демон покреће скрипту `PostLogin` као администратор (root), а затим покреће скрипту `PreSession` као администратор. Након покретања ових скрипти, покреће се корисничка сесија. Када корисник напусти своју сесију, скрипта `PostSession` се покреће као администратор. Ове скрипте су обезбеђене као кукице за дистрибуције и крајње кориснике како би прилагодили начин управљања сесијама. На пример, коришћењем ових кукица можете подесити машину која у ходу прави кориснички $HOME директоријум и брише га приликом одјаве. Разлика између скрипти `PostLogin` и `PreSession` је у томе што се `PostLogin` покреће пре позива pam_open_session, па је то право место за све што треба да се покрене пре него што се корисничка сесија покрене. Скрипта `PreSession` се позива након покретања сесије.

### Панел поздрављања

ГДМ програм за поздрављање приказује панел усидрен на дну екрана који пружа додатну функционалност. Када је корисник изабран, панел омогућава кориснику да изабере сесију, језик и распоред тастатуре који ће користити након пријаве. Бирач распореда тастатуре такође мења распоред тастатуре који се користи приликом куцања лозинке. Панел такође садржи област у којој сервиси за пријаву остављају иконице статуса. Неки примери иконица статуса укључују иконицу батерије за тренутну потрошњу батерије и иконицу за омогућавање функција приступачности. Програм за поздрављање такође нуди дугмад која омогућавају кориснику да угаси или поново покрене систем. Могуће је подесити ГДМ тако да не приказује дугмад за гашење и поновно покретање, ако се то жели. ГДМ се такође може подесити путем PolicyKit-а (или путем RBAC-а на Oracle Solaris-у) тако да захтева од корисника одговарајуће овлашћење пре прихватања захтева за гашење или поновно покретање.

Имајте на уму да су функције распореда тастатуре доступне само на системима који подржавају libxklavier.

### Приступачност

ГДМ подржава „Приступачну пријаву“, омогућавајући корисницима да се пријаве у своју сесију чак и ако не могу лако да користе екран, миша или тастатуру на уобичајен начин. Доступне су функције технологије приступачности (AT) као што су тастатура на екрану, читач екрана, лупа и Xserver AccessX приступачност тастатуре. Такође је могуће омогућити велики текст или иконице и контроле високог контраста, ако је потребно. Погледајте одељак „Подешавање приступачности“ у документу за више информација о томе како се могу подесити различите функције приступачности.

На неким оперативним системима потребно је осигурати да је ГДМ корисник члан групе „audio“ како би АТ програми који захтевају звучни излаз (као што је претварање текста у говор) били функционални.

### ГДМ прегледач лица

Прегледач лица је прочеље које омогућава корисницима да изаберу своје корисничко име кликом на слику. Ова функција се може омогућити или онемогућити путем org.gnome.login-screen disable-user-list GSettings кључа и подразумевано је укључена. Када је онемогућена, корисници морају ручно да укуцају своје пуно корисничко име. Када је омогућена, приказује све локалне кориснике који су доступни за пријаву на систему (сви кориснички налози дефинисани у датотеци /etc/passwd који имају важећу шкољку и довољно висок UID) и удаљене кориснике који су се недавно пријавили. Прегледач лица у ГДМ-у 2.20 и ранијим верзијама покушавао је да прикаже све удаљене кориснике, што је изазивало проблеме са перформансама у великим пословним окружењима.

Прегледач лица је подешен тако да приказује кориснике који се најчешће пријављују на врху списка. Ово помаже корисницима који се често пријављују да брзо пронађу своју слику за пријаву.

Прегледач лица подржава „претрагу током куцања“ која динамички помера избор лица како корисник куца одговарајуће корисничко име на списку. То значи да ће корисник са дугачким корисничким именом морати да укуца само првих неколико знакова корисничког имена пре него што се изабере одговарајућа ставка на списку.

Иконице које користи ГДМ може инсталирати администратор система на глобалном нивоу или се могу налазити у личним директоријумима корисника. Ако су инсталиране глобално, требало би да буду у директоријуму `<share>/pixmaps/faces/`, а назив датотеке треба да буде име корисника. Датотеке слика лица треба да буду у стандардном формату који ГТК+ може да прочита, као што су PNG или JPEG. Иконице лица постављене у глобални директоријум лица морају бити читљиве за ГДМ корисника.

Ако не постоји глобална иконица за корисника, ГДМ ће потражити слику у корисничком $HOME директоријуму. ГДМ ће прво потражити слику лица корисника у `~/.face`. Ако је не пронађе, покушаће са `~/.face.icon`. Ако је и даље не пронађе, користиће вредност дефинисану за „face/picture=“ у датотеци `~/.gnome2/gdm`.

Ако корисник нема дефинисану слику лица, ГДМ ће користити иконицу „stock_person“ дефинисану у тренутној ГТК+ теми. Ако таква слика није дефинисана, користиће општу слику лица.

Имајте на уму да учитавање и промена величине иконица лица које се налазе у удаљеним корисничким директоријумима може бити веома дуготрајан задатак. Пошто није практично учитавати слике преко NIS-а или NFS-а, ГДМ не покушава да учита слике лица из удаљених личних директоријума.

Када је прегледач укључен, важећа корисничка имена на рачунару су изложена свима на увид. Ако је XDMCP омогућен, тада су корисничка имена изложена удаљеним корисницима. Ово, наравно, донекле ограничава безбедност јер злонамерни корисник не мора да погађа важећа корисничка имена. У неким веома рестриктивним окружењима прегледач лица можда неће бити прикладан.

### XDMCP

ГДМ демон се може подесити да слуша и управља захтевима протокола за управљање X екраном (XDMCP) са удаљених екрана. Подразумевано је XDMCP подршка искључена, али се може омогућити ако се жели. Ако је ГДМ изграђен са подршком за TCP Wrapper, тада ће демон одобрити приступ само домаћинима наведеним у одељку ГДМ сервиса у датотеци подешавања TCP Wrapper-а.

ГДМ укључује неколико мера које га чине отпорнијим на нападе ускраћивањем услуге на XDMCP сервису. Многи параметри протокола, временска ограничења руковања итд. могу се фино подесити. Подразумевано подешавање би требало да ради разумно на већини система.

ГДМ подразумевано слуша XDMCP захтеве на нормалном UDP порту који се користи за XDMCP, порт 177, и одговараће на QUERY и BROADCAST_QUERY захтеве слањем WILLING пакета пошиљаоцу.

ГДМ се такође може подесити да поштује ИНДИРЕКТНЕ упите и прикаже бирач домаћина удаљеном екрану. ГДМ ће запамтити корисников избор и проследити наредне захтеве изабраном управнику. ГДМ такође подржава проширење протокола које ће учинити да заборави преусмеравање када се корисникова веза успешно успостави. Ово проширење је подржано само ако су оба демона ГДМ. Оно је провидно и ИксДМ или други демони који примењују ИксДМЦП ће га занемарити.

Ако се чини да ИксДМЦП не ради, уверите се да су све машине наведене у `/etc/hosts`.

Погледајте одељак „Безбедност“ за информације о безбедносним проблемима приликом коришћења ИксДМЦП-а.

### Бележење

ГДМ користи системски дневник за бележење грешака и стања. Такође може бележити податке за прочишћавање, што може бити корисно за проналажење проблема ако ГДМ не ради исправно. Излаз прочишћавања се може омогућити постављањем кључа debug/Enable на „true“ у датотеци `<etc>/gdm/custom.conf`.

Излаз са различитих Икс-сервера се чува у ГДМ директоријуму дневника, који је обично `<var>/log/gdm/`. Све поруке Икс-сервера се чувају у датотеци повезаној са вредношћу екрана, `<display>.log`.

Излаз сесије се прослеђује кроз ГДМ демон у датотеку `~/`$XDG_CACHE_HOME`/gdm/session.log` која се обично проширује на `~/.cache/gdm/session.log`. Датотека се преписује при свакој пријави, па ће одјављивање и поновно пријављивање истог корисника путем ГДМ-а довести до губитка свих порука из претходне сесије.

Имајте на уму да ако ГДМ из неког разлога не може да направи ову датотеку, тада ће бити направљена резервна датотека под називом `~/`$XDG_CACHE_HOME`/gdm/session.log.XXXXXXXX` где су `XXXXXXXX` неки насумични знакови.

### Брза промена корисника

ГДМ омогућава да више корисника буде пријављено у исто време. Након што се један корисник пријави, додатни корисници се могу пријавити путем пребацивача корисника на Гномовом панелу, или преко дугмета „Промени корисника“ у прозорчету за закључавање екрана Гномовог чувара екрана. Активна сесија се може мењати напред-назад коришћењем истог механизма. Имајте на уму да неке дистрибуције можда неће додати пребацивач корисника у подразумевано подешавање панела. Може се додати коришћењем контекстног менија панела.

Имајте на уму да је ова функција доступна на системима који подржавају виртуелне терминале. Ова функција неће радити ако виртуелни терминали нису доступни.

## Безбедност

### ГДМ корисник и група

Из безбедносних разлога, за правилан рад се препоручују наменски ИД корисника и групе. Овај корисник и група су обично „gdm“ на већини система, али се могу подесити на било ког корисника или групу. Сви ГДМ ГУИ програми се покрећу као овај корисник, тако да се програми који комуницирају са корисником покрећу у затвореном окружењу (sandbox). Овај корисник и група треба да имају ограничена овлашћења.

Једина посебна привилегија која је потребна кориснику „gdm“ је могућност читања и писања Xauth датотека у директоријум `<var>/run/gdm`. Директоријум `<var>/run/gdm` треба да има власништво root:gdm и овлашћења 1777.

Не би требало, ни под којим околностима, да подесите ГДМ корисника/групу на корисника коме би неки корисник могао лако приступити, као што је корисник `nobody`. Сваки корисник који добије приступ Xauth кључу може да шпијунира и контролише покренуте ГУИ програме у придруженој сесији или да изврши напад ускраћивањем услуге на њу. Важно је осигурати да је систем исправно подешен тако да само корисник „gdm“ има приступ овим датотекама и да није лако пријавити се на овај налог. На пример, налог треба да буде подешен тако да нема лозинку или да не дозвољава корисницима који нису администратори (root) да се пријаве на налог.

Подешавање ГДМ поздравника се чува у ГКонфу. Да би се омогућило ГДМ кориснику да може да уписује подешавања, неопходно је да корисник „gdm“ има лични ($HOME) директоријум у који се може писати. Корисници могу подесити подразумевана ГКонф подешавања по жељи како би избегли потребу да кориснику „gdm“ обезбеде лични директоријум у који се може писати. Међутим, неке функције ГДМ-а могу бити онемогућене ако он не може да упише податке о стању у ГКонф подешавања.

### ПАМ

ГДМ користи ПАМ за потврду идентитета при пријави. ПАМ је скраћеница за Pluggable Authentication Module (прикључни модул за потврду идентитета), и користе га скоро сви програми који захтевају потврду идентитета на вашем рачунару. Он омогућава администратору да подеси специфично понашање потврде идентитета за различите програме за пријаву (као што су ssh, ГУИ за пријаву, чувар екрана, итд.)

ПАМ је сложен и врло прилагодљив, и ова документација нема намеру да то детаљно објашњава. Уместо тога, намера је да пружи преглед тога како се ПАМ подешавања односе на ГДМ, како се ПАМ уобичајено подешава са ГДМ-ом и познате проблеме. Очекује се да ће особа која треба да изврши ПАМ подешавање морати да прочита додатну ПАМ документацију како би разумела како да подеси ПАМ и разумела термине који се користе у овом одељку.

ПАМ подешавање има различита, али слична прочеља на различитим оперативним системима, па проверите pam.d или pam.conf мануалне странице за детаље. Обавезно прочитајте ПАМ документацију и будите упознати са безбедносним импликацијама свих измена које намеравате да унесете у своја подешавања.

Имајте на уму да, подразумевано, ГДМ користи назив ПАМ услуге „gdm“ за обичну пријаву и назив ПАМ услуге „gdm-autologin“ за аутоматску пријаву. Ове услуге можда нису дефинисане у вашој pam.d или pam.conf датотеци подешавања. Ако нема уноса, тада ће ГДМ користити подразумевано ПАМ понашање. На већини система ово би требало да ради добро. Међутим, функција аутоматске пријаве можда неће радити ако услуга gdm-autologin није дефинисана.

Скрипта `PostLogin` се извршава пре него што се позове pam_open_session, а скрипта `PreSession` након тога. Ово омогућава администратору система да дода било какво скриптовање у процес пријаве, било пре или након што ПАМ покрене сесију.

Ако желите да ГДМ ради са другим врстама механизама за потврду идентитета (као што су читач отиска прста или паметне картице), онда би то требало да спроведете коришћењем ПАМ модула услуге за жељену врсту потврде идентитета, уместо да покушавате да директно мењате ГДМ кôд. Погледајте ПАМ документацију на вашем систему.

ПАМ има одређена ограничења у погледу могућности рада са више врста потврде идентитета истовремено, као што је подршка за прихватање паметне картице и могућност куцања корисничког имена и лозинке у програм за пријаву. Постоје технике које се користе да би ово радило, и најбоље је истражити како се овај проблем обично решава приликом подешавања такве конфигурације.

Ако аутоматска пријава не ради на систему, проверите да ли је „gdm-autologin“ ПАМ стек дефинисан у ПАМ подешавањима. Да би ово радило, неопходно је користити ПАМ модул који једноставно не врши потврду идентитета, или који једноставно враћа PAM_SUCCESS из свих својих јавних прочеља. Под претпоставком да ваш систем има pam_allow.so ПАМ модул који то ради, ПАМ подешавање за омогућавање „gdm-autologin“ би изгледало овако:

           gdm-autologin auth  required    pam_unix_cred.so.1
           gdm-autologin auth  sufficient  pam_allow.so.1
           gdm-autologin account  sufficient  pam_allow.so.1
           gdm-autologin session  sufficient  pam_allow.so.1
           gdm-autologin password  sufficient  pam_allow.so.1

Горње подешавање ће довести до тога да се не прави унос у lastlog. Ако се жели lastlog унос, онда користите следеће за сесију:

           gdm-autologin session required pam_unix_session.so.1

Ако рачунар користи неколико људи, што чини аутоматску пријаву неприкладном, можда ћете желети да дозволите неким корисницима да се пријаве без уноса лозинке. Ова могућност се може омогућити као опција по кориснику у алату за управљање корисницима из gnome-system-tools; то се постиже провером да ли је корисник члан Јуникс групе под називом „nopasswdlogin“ пре тражења лозинке. Да би ово радило, ПАМ датотека подешавања за услугу „gdm“ мора да садржи ред као што је:

          gdm auth  sufficient  pam_succeed_if.so  user ingroup nopasswdlogin

### utmp и wtmp

ГДМ прави utmp и wtmp уносе у бази података корисничких налога приликом пријаве и одјаве из сесије. База података utmp садржи податке о приступу и налозима корисника којима приступају наредбе као што су `finger`, `last`, `login` и `who`. База података wtmp садржи историјат корисничког приступа и податке о налозима за базу података utmp. Погледајте man странице за utmp и wtmp на вашем систему за више података.

### Шема потврде идентитета Икс-сервера

Датотеке овлашћења Икс-сервера се чувају у новоствореном поддиректоријуму `<var>/run/gdm` при покретању. Ове датотеке се користе за чување и дељење „лозинке“ између Икс клијената и Икс-сервера. Ова „лозинка“ је јединствена за сваку пријављену сесију, тако да корисници из једне сесије не могу да шпијунирају кориснике из друге.

ГДМ подржава само MIT-MAGIC-COOKIE-1 шему потврде идентитета Икс-сервера. Обично се мало добија од других шема, и до сада није уложен труд да се оне спроведу. Будите посебно пажљиви при коришћењу XDMCP-а јер колачић за потврду идентитета Икс-сервера иде преко мреже као чист текст. Ако је шпијунирање могуће, онда би нападач могао једноставно да ухвати вашу лозинку за потврду идентитета док се пријављујете, без обзира на шему потврде идентитета која се користи. Ако је шпијунирање могуће и непожељно, онда би требало да користите ssh за тунелисање Икс везе уместо коришћења XDMCP-а. О XDMCP-у можете размишљати као о некој врсти графичког телнета, који има исте безбедносне проблеме. У већини случајева, требало би да се преферира ssh -Y у односу на ГДМ-ове XDMCP могућности.

### Безбедност XDMCP-а

Иако је ваш приказ заштићен колачићима, XEvents, а тиме и притисци тастера приликом уноса лозинки, и даље ће ићи преко мреже у чистом тексту. Веома је лако ухватити их.

XDMCP је првенствено користан за покретање танких клијената, као што је у терминалским лабораторијама. Тим танким клијентима ће мрежа бити потребна само за приступ серверу, па се чини да је најбоља безбедносна политика да ти танки клијенти буду на засебној мрежи којој се не може приступити из спољног света, и која се може повезати само са сервером. Једина тачка са које треба да приступите спољашњости је сервер. Ова врста подешавања никада не би требало да користи неуправљани разводник или другу мрежу која се може њушкати.

### Контрола приступа XDMCP-у

Контрола приступа XDMCP-у се врши помоћо ТЦП омотача. Могуће је превести ГДМ без подршке за ТЦП омотаче, тако да ова могућност можда неће бити подржана на неким оперативним системима.

Требало би да користите назив позадинског програма `gdm` у датотекама `<etc>/hosts.allow` и `<etc>/hosts.deny`. На пример, да бисте забранили рачунарима са `.evil.domain` да се пријављују, додајте

    gdm: .evil.domain

у `<etc>/hosts.deny`. Можда ћете такође морати да додате

    gdm: .your.domain

у вашу датотеку `<etc>/hosts.allow` ако обично забрањујете све услуге са свих домаћина. Погледајте страницу упутства hosts.allow(5) за више детаља.

### Безбедност мрежне баријере

Иако ГДМ покушава да надмудри потенцијалне нападаче који покушавају да искористе XDMCP, и даље се саветује да блокирате XDMCP прикључак (обично УДП прикључак 177) на вашој мрежној баријери, осим ако је заиста потребан. ГДМ штити од напада ускраћивањем услуге, али је X протокол сам по себи небезбедан и треба га користити само у контролисаним окружењима. Такође, свака удаљена веза заузима много ресурса, па је много лакше извршити напад ускраћивањем услуге путем XDMCP-а него напасти веб сервер.

Такође је паметно блокирати све прикључке Икс сервера. То су ТЦП прикључци 6000+ (један за сваки број екрана) на вашој мрежној баријери. Имајте на уму да ће ГДМ користити бројеве екрана 20 и веће за прилагодљиве сервере на захтев.

Икс није веома безбедан протокол када се користи преко интернета, а XDMCP је још мање безбедан.

### PolicyKit

ГДМ може бити подешен да користи PolicyKit како би омогућио администратору система да контролише да ли екран за пријаву треба да обезбеди дугмад за гашење и поновно покретање на екрану поздравника.

Овим дугмадима управљају акције `org.freedesktop.consolekit.system.stop-multiple-users` и `org.freedesktop.consolekit.system.restart-multiple-users`. Политика за ове акције се може подесити помоћу алата „polkit-gnome-authorization“ или програма линије наредби „polkit-auth“.

### РБАЦ (Контрола приступа заснована на улогама)

ГДМ може бити подешен да користи РБАЦ уместо PolicyKit-а. У овом случају, РБАЦ подешавање се користи за контролу да ли екран за пријаву треба да обезбеди дугмад за гашење и поновно покретање на екрану поздравника.

На пример, на Oracle Solaris-у, овлашћење „solaris.system.shutdown“ се користи за контролу овога. Једноставно измените датотеку `/etc/user_attr` тако да корисник „gdm“ има ово овлашћење.

## Подршка за ConsoleKit

ГДМ укључује подршку за објављивање података о пријави корисника помоћу оквира за рачуноводство корисничких сесија и сесија пријаве познатог као ConsoleKit. ConsoleKit може да прати све тренутно пријављене кориснике. У том погледу, може се користити као замена за utmp или utmpx датотеке које су доступне на већини оперативних система налик Јуниксу.

Када ГДМ треба да направи нови процес пријаве за корисника, он ће позвати повлашћени метод ConsoleKit-а како би отворио нову сесију за тог корисника. У то време ГДМ такође пружа ConsoleKit-у податке о овој корисничкој сесији као што су: ИД корисника, назив X11 екрана који ће бити повезан са сесијом, назив домаћина са којег сесија потиче (корисно у случају XDMCP сесије), да ли је ова сесија прикачена или не, итд. Као ентитет који покреће кориснички процес, ГДМ је у јединственој позицији да зна о корисничкој сесији и да му се верује да пружи ове делове података. Употреба овог повлашћеног метода је ограничена политиком безбедности системске сабирнице порука Д-сабирнице.

У случају да се корисник са постојећом сесијом пријавио на ГДМ и затражи да настави ту постојећу сесију, ГДМ позива повлашћени метод ConsoleKit-а да откључа ту сесију. Тачни детаљи о томе шта се дешава када сесија прими овај сигнал за откључавање су неодређени и специфични за сесију. Међутим, већина сесија ће откључати чувар екрана као одговор.

Када корисник изабере да се одјави, или ако ГДМ или сесија неочекивано прекину рад, корисничка сесија ће бити одјављена из ConsoleKit-а.

## Конфигурација

ГДМ има неколико прочеља за подешавање. То укључује тачке интеграције скриптовања, подешавање позадинског програма, подешавање поздравника, општа подешавања сесије, интеграцију са подешавањем gnome-settings-daemon-а и подешавање сесије. Ове врсте интеграције су детаљно описане у наставку.

### Тачке интегрисања скриптовања

Тачке интегрисања ГДМ скрипти се могу наћи у директоријуму `<etc>/gdm/`:

    Xsession
    Init/
    PostLogin/
    PreSession/
    PostSession/

Скрипте `Init`, `PostLogin`, `PreSession` и `PostSession` раде као што је описано испод.

За сваку врсту скрипте, подразумевана која ће бити извршена се зове „Default“ и чува се у директоријуму придруженом тој врсти скрипте. Тако је подразумевана `Init` скрипта `<etc>/gdm/Init/Default`. Може се доставити скрипта по екрану, и ако постоји, биће покренута уместо подразумеване скрипте. Такве скрипте се чувају у истом директоријуму као и подразумевана скрипта и имају исти назив као вредност DISPLAY Икс-сервера за тај екран. На пример, ако постоји скрипта `<Init>/:0`, биће покренута за DISPLAY „:0“.

Све ове скрипте се покрећу са овлашћењима администратора (root) и враћају 0 ако су успешно извршене, а повратни код различит од нуле ако је дошло до неуспеха који би требало да доведе до прекида сесије пријаве. Такође имајте на уму да ће ГДМ блокирати док се скрипте не заврше, па ако било која од ових скрипти застане, то ће довести и до застоја процеса пријаве.

Када се Икс-сервер за графичко прочеље пријаве успешно покрене, али пре него што се графичко прочеље пријаве заправо прикаже, ГДМ ће покренути скрипту `Init`. Ова скрипта је корисна за покретање програма који би требало да раде док је приказан екран за пријаву, или за обављање било каквог посебног покретања ако је потребно.

Након што је корисник успешно аутентификован, ГДМ ће покренути скрипту `PostLogin`. Ово се ради пре било каквог подешавања сесије, укључујући и пре позива „pam_open_session“. Ова скрипта је корисна за обављање било каквог покретања сесије које треба да се деси пре почетка сесије. На пример, можете подесити кориснички „$HOME“ директоријум ако је потребно.

Након што је корисничка сесија покренута, ГДМ ће покренути скрипту `PreSession`. Ова скрипта је корисна за обављање било каквог покретања сесије које треба да се деси након што је сесија покренута. Може се користити за управљање сесијом или вођење евиденције, на пример.

Када корисник прекине своју сесију, ГДМ ће покренути скрипту `PostSession`. Имајте на уму да ће Икс-сервер бити заустављен до тренутка покретања ове скрипте, па му не би требало приступати.

Имајте на уму да ће скрипта `PostSession` бити покренута чак и када екран не успе да одговори због У/И грешке или сличног. Стога нема гаранције да ће Икс програми радити током извршавања скрипте.

Све горенаведене скрипте ће поставити променљиву окружења `$RUNNING_UNDER_GDM` на `yes`. Ако се скрипте деле и са другим управницима приказа, ово вам омогућава да препознате када ГДМ позива ове скрипте, тако да можете покренути одређени код када се користи ГДМ.

### Подешавање самопокретања

Директоријум `<share>/gdm/autostart/LoginWindow` садржи датотеке у формату који је одређен „FreeDesktop.org спецификацијом самопокретања стоних програма“. Стандардне могућности у спецификацији се могу користити за навођење програма који би требало аутоматски да се поново покрену или да се покрену само ако је постављена вредност подешавања Г-конфа, итд.

Било које `.desktop` датотеке у овом директоријуму ће довести до тога да се придружени програм аутоматски покрене са графичким прочељем ГДМ поздравника. Подразумевано, ГДМ се испоручује са датотекама које ће самостално покренути сам „gdm-simple-greeter“ поздравник, програм „gnome-power-manager“, „gnome-settings-daemon“ и управник прозора „metacity“. Ови програми су потребни да би поздравник радио. Поред тога, обезбеђене су десктоп датотеке за покретање разних АТ програма ако су постављене вредности подешавања наведене у одељку „Подешавање приступачности“ испод.

### Xsession скрипта

Постоји и `Xsession` скрипта која се налази на `<etc>/gdm/Xsession` и која се позива између скрипти `PreSession` и `PostSession`. Ова скрипта не подржава подешавање по екрану као остале скрипте. Ова скрипта се користи за заправо покретање корисничке сесије. Ова скрипта се покреће као корисник, и покренуће било коју сесију која је наведена у датотеци сесије радне површине коју је корисник изабрао да покрене.

### Подешавање позадинског програма

ГДМ позадински програм се подешава помоћу датотеке `<etc>/gdm/custom.conf`. Подразумеване вредности се чувају у Г-конфу у датотеци `gdm.schemas`. Препоручује се да крајњи корисници мењају датотеку `<etc>/gdm/custom.conf` јер датотека са шемама може бити преписана када корисник ажурира свој систем на новију верзију ГДМ-а.

Имајте на уму да су старије верзије ГДМ-а подржавале додатне опције подешавања које више нису подржане у најновијим верзијама ГДМ-а.

Датотека `<etc>/gdm/custom.conf` је у формату `keyfile` (датотека кључа). Кључне речи у заградама дефинишу одељке група, ниске пре знака једнакости (=) су кључеви, а подаци након знака једнакости представљају њихове вредности. Празни редови или редови који почињу знаком тарабе (#) се занемарују.

Датотека `<etc>/gdm/custom.conf` подржава одељке група „[daemon]“, „[security]“ и „[xdmcp]“. Унутар сваке групе постоје одређени парови кључ/вредност који се могу навести ради измене понашања ГДМ-а. На пример, да бисте омогућили временски ограничену пријаву и навели да корисник за временски ограничену пријаву буде корисник под именом „you“, изменили бисте датотеку тако да садржи следеће редове:

    [daemon]
    TimedLoginEnable=true
    TimedLogin=you

Следи потпуни списак подржаних конфигурационих кључева:

#### [chooser]

Multicast

-     Multicast=false

  Ако је изабрано и ИПв6 је омогућен, бирач ће послати упит вишеструког емитовања локалној мрежи и прикупити одговоре од домаћина који су приступили групи вишеструког емитовања.

MulticastAddr

-     MulticastAddr=ff02::1

  Ово је адреса вишеструког емитовања локалне везе (Link-local).

#### [daemon]

TimedLoginEnable

-     TimedLoginEnable=false

  Да ли корисник наведен у `TimedLogin` треба да буде пријављен након одређеног броја секунди (постављено помоћу `TimedLoginDelay`) неактивности на екрану за пријаву. Ово је корисно за јавне терминале или можда чак и за кућну употребу. Ако корисник користи тастатуру или прегледа меније, време истека ће бити враћено на `TimedLoginDelay` или 30 секунди, шта год је веће. Ако корисник не унесе корисничко име већ само притисне тастер ЕНТЕР док програм за пријаву захтева корисничко име, тада ће ГДМ претпоставити да корисник жели да се одмах пријави као временски ограничени корисник. Имајте на уму да се за овог корисника неће тражити лозинка, па треба да будете опрезни, иако се при коришћењу ПАМ-а може подесити да захтева унос лозинке пре него што дозволи пријаву. Погледајте одељак „Security->PAM“ у упутству за више информација или за помоћ ако се чини да ова функција не ради.

TimedLogin

-     TimedLogin=

  Ово је корисник који треба да буде пријављен након наведеног броја секунди неактивности.

  Ако се вредност завршава усправном цртом | (симбол спојке), тада ће ГДМ извршити наведени програм и користити било коју вредност коју програм врати на стандардни излаз као корисника. Програм се покреће са постављеном променљивом окружења DISPLAY тако да је могуће навести корисника на основу екрана. На пример, ако је вредност „/usr/bin/getloginuser|“, тада ће програм „/usr/bin/getloginuser“ бити покренут ради добављања вредности корисника.

TimedLoginDelay

-     TimedLoginDelay=30

  Застој у секундама пре него што ће корисник `TimedLogin` бити пријављен.

AutomaticLoginEnable

-     AutomaticLoginEnable=false

  Ако је изабрано, корисник наведен у `AutomaticLogin` треба да буде пријављен одмах. Ова могућност је као временска пријава са застојем од 0 секунди.

AutomaticLogin

-     AutomaticLogin=

  Ово је корисник који треба да буде пријављен одмах ако је `AutomaticLoginEnable` изабрано.

  Ако се вредност завршава усправном цртом | (симбол спојке), тада ће ГДМ извршити наведени програм и користити било коју вредност коју програм врати на стандардни излаз као корисника. Програм се покреће са постављеном променљивом окружења DISPLAY тако да је могуће навести корисника на основу екрана. На пример, ако је вредност „/usr/bin/getloginuser|“, тада ће програм „/usr/bin/getloginuser“ бити покренут ради добављања вредности корисника.

Корисник

-     User=gdm

  Корисничко име под којим се покрећу поздравник и остали ГУИ програми. Погледајте кључ подешавања `User` и одељак „Security->GDM User And Group“ овог документа за више података.

Group

-     Group=gdm

  Назив групе под којом се покрећу поздравник и остали ГУИ програми. Погледајте кључ подешавања `Group` и одељак „Security->GDM User And Group“ овог документа за више података.

#### Опције за прочишћавање

#### [debug]

Омогући

-     Enable=false

  Да омогућите прочишћавање, поставите кључ „debug/Enable“ на „true“ у датотеци `<etc>/gdm/custom.conf` и поново покрените ГДМ. Тада ће излаз прочишћавања бити послат у системску датотеку дневника (`<var>/log/messages` или `<var>/adm/messages` у зависности од вашег оперативног система).

#### Опције безбедности

#### [security]

DisallowTCP

-     DisallowTCP=true

  Ако је изабрано, онда увек додајте `-nolisten tcp` на линију наредби приликом покретања прикачених X-сервера, чиме се онемогућавају ТЦП везе. Ово је безбедније подешавање ако не користите удаљене везе.

#### XDCMP подршка

#### [xdmcp]

DisplaysPerHost

-     DisplaysPerHost=1

  Да би се спречило да нападачи попуне ред чекања, ГДМ ће дозволити само једну везу за сваки удаљени рачунар. Ако желите да пружите услуге приказа рачунарима са више од једног екрана, требало би да повећате ову вредност.

  Имајте на уму да број прикачених ЕКРАНА који су дозвољени није ограничен. Овом опцијом подешавања су ограничена само удаљена повезивања путем XDMCP-а.

Омогући

-     Enable=false

  Постављање ове вредности на тачно омогућава XDMCP подршку, што дозвољава ГДМ-у да управља удаљеним приказима/X терминалима.

  `gdm` ослушкује захтеве на УДП прикључку 177. Погледајте опцију „Port“ за више података.

  Ако је ГДМ преведен са подршком за то, приступ са удаљених екрана се може контролисати коришћењем библиотеке ТЦП омотача (TCP Wrappers). Назив услуге је `gdm`

  Треба да додате

      gdm:.my.domain

  у вашу датотеку `<etc>/hosts.allow`, у зависности од вашег подешавања TCP омотача. Погледајте приручну страницу hosts.allow за више детаља.

  Имајте на уму да XDMCP није нарочито безбедан протокол и да је добра идеја блокирати УДП прикључак 177 на вашој мрежној баријери, осим ако вам заиста није потребан.

HonorIndirect

-     HonorIndirect=true

  Омогућава XDMCP ИНДИРЕКТНО бирање (тј. удаљено извршавање програма `gdmchooser`) за X-терминале који немају сопствени прегледач приказа.

MaxPending

-     MaxPending=4

  Да би се избегли напади ускраћивањем услуге, ГДМ има ред чекања фиксне величине за везе на чекању. Само „MaxPending“ екрана се може покренути у исто време.

  Имајте на уму да овај параметар не ограничава број удаљених екрана којима се може управљати. Он само ограничава број екрана који истовремено покрећу везу.

MaxSessions

-     MaxSessions=16

  Одређује највећи број удаљених веза екрана којима ће се истовремено управљати. Тј. укупан број удаљених екрана који могу да користе вашег домаћина.

MaxWait

-     MaxWait=30

  Када је ГДМ спреман да управља екраном, шаље му се пакет „ACCEPT“ који садржи јединствени ид сесије који ће се користити у будућим XDMCP разговорима.

  ГДМ ће затим поставити ид сесије у ред на чекању, чекајући да екран одговори захтевом „MANAGE“.

  Ако се одговор не прими у року од „MaxWait“ секунди, ГДМ ће прогласити екран мртвим и обрисати га из реда на чекању, ослобађајући место за друге екране.

MaxWaitIndirect

-     MaxWaitIndirect=30

  Параметар „MaxWaitIndirect“ одређује највећи број секунди између времена када корисник изабере домаћина и накнадног индиректног упита где је корисник повезан са домаћином. Када време истекне, подаци о изабраном домаћину се заборављају, а индиректно место се ослобађа за друге екране. Подаци могу бити заборављени и раније ако има више домаћина који покушавају да пошаљу индиректне упите него што је `MaxPendingIndirect`.

Порт

-     Port=177

  Број UDP прикључка који `gdm` треба да слуша за XDMCP захтеве. Немојте ово мењати осим ако не знате шта радите.

Приправан

-     Willing=<etc>/gdm/Xwilling

  Када машина пошаље пакет „WILLING“ назад након упита „QUERY“, она шаље ниску која даје тренутно стање овог сервера. Подразумевана порука је ИД система, али је могуће направити скрипту која приказује прилагођену поруку. Ако ова скрипта не постоји или је овај кључ празан, шаље се подразумевана порука. Ако ова скрипта успе и произведе неки излаз, шаље се њена прва линија излаза (и само прва линија). Покреће се највише једном сваке 3 секунде како би се спречило могуће ускраћивање услуге засипањем машине пакетима „QUERY“.

### Подешавање једноставног поздравника

Подразумевани ГДМ-ов поздравник се зове једноставан поздравник и подешава се путем Г-конфа. Подразумеване вредности се чувају у Г-конфу у датотеци `gdm-simple-greeter.schemas`. Ове подразумеване вредности се могу преиначити ако корисник „gdm“ има лични директоријум ($HOME) у који може да уписује подешавања Г-конфа. Ове вредности се могу уређивати помоћу програма `gconftool-2` или `gconf-editor`. Подржане су следеће опције подешавања:

### Кључеви подешавања поздравника

/apps/gdm/simple-greeter/banner_message_enable

-     false (логичка вредност)

  Контролише да ли се приказује текст поруке на врпци.

/apps/gdm/simple-greeter/banner_message_text

-     NULL (ниска)

  Одређује текст поруке на врпци који ће бити приказан у прозору поздравника.

/apps/gdm/simple-greeter/disable_restart_buttons

-     false (логичка вредност)

  Контролише да ли ће бити приказана дугмад за поновно покретање у прозору за пријаву.

/apps/gdm/simple-greeter/disable_user_list

-     false (логичка вредност)

  Ако је изабрано, онда се прегледач ликова са познатим корисницима не приказује у прозору за пријаву.

/apps/gdm/simple-greeter/logo_icon_name

-     computer (ниска)

  Поставља се на назив тематизоване иконице која ће се користити за логотип поздравника.

/apps/gdm/simple-greeter/recent-languages

-     [] (списак ниски)

  Поставља се на списак језика који ће се подразумевано приказивати у прозору за пријаву. Подразумевана вредност је „[]“. Са подразумеваним подешавањем приказује се само системски подразумевани језик и опција „Остали...“ која отвара прозорче са потпуним списком доступних језика које корисник може да изабере.

  Није предвиђено да корисници ручно мењају ово подешавање. Уместо тога, ГДМ прати све језике изабране у овом кључу подешавања и приказиваће их у комбинованом оквиру за избор језика заједно са избором „Остали...“. На тај начин се често бирани језици лакше бирају.

/apps/gdm/simple-greeter/recent-layouts

-     [] (списак ниски)

  Поставља се на списак распореда тастатуре који ће се подразумевано приказивати на панелу за пријаву. Подразумевана вредност је „[]“. Са подразумеваним подешавањем приказује се само системски подразумевани распоред тастатуре и опција „Остали...“ која отвара прозорче са потпуним списком доступних распореда тастатуре које корисник може да изабере.

  Није предвиђено да корисници ручно мењају ово подешавање. Уместо тога, ГДМ прати све распореде тастатуре изабране у овом кључу подешавања и приказиваће их у комбинованом оквиру за избор распореда тастатуре заједно са избором „Остали...“. На тај начин се често бирани распореди тастатуре лакше бирају.

/apps/gdm/simple-greeter/wm_use_compiz

-     false (логичка вредност)

  Одређује да ли се компиз користи као управник прозора уместо метаситија.

### Подешавање приступачности

Овај одељак описује опције подешавања приступачности доступне у ГДМ-у.

#### Прозорче приступачности ГДМ-а и Гконф кључеви

Панел ГДМ поздравника на екрану за пријаву приказује иконицу приступачности. Клик на ту иконицу отвара прозорче приступачности ГДМ-а. У прозорчету приступачности ГДМ-а налази се списак кућица за потврду, тако да корисник може да укључи или искључи придружене алате за испомоћ.

Кућице за потврду које одговарају тастатури на екрану, лупи и читачу екрана делују на три Гконф кључа описана у наредном одељку овог документа. Укључивањем или искључивањем ових кућица, придружени Гконф кључ се поставља на „true“ (тачно) или „false“ (нетачно). Када је Гконф кључ постављен на „true“, покрећу се алати за испомоћ повезани са тим кључем. Када је Гконф кључ постављен на „false“, сви покренути алати за испомоћ повезани са тим кључем се заустављају. Ови Гконф кључеви се не враћају аутоматски на подразумевано стање након што се корисник пријави. Сходно томе, алати за испомоћ који су били покренути током последње ГДМ сесије пријављивања биће аутоматски покренути при следећој ГДМ сесији пријављивања.

Остале кућице за потврду у прозорчету приступачности ГДМ-а немају одговарајуће Гконф кључеве јер се не покреће додатни програм који би пружио функције приступачности које оне нуде. Ове друге опције одговарају функцијама приступачности које пружа Икс сервер, који је увек покренут током ГДМ сесије.

#### Гконф кључеви приступачности

ГДМ нуди следеће Гконф кључеве за управљање својим функцијама приступачности:

#### ГДМ кључеви за подешавање

/desktop/gnome/interface/accessibility

-     false (логичка вредност)

  Одређује да ли ће инфраструктура приступачности бити покренута са ГДМ графичким прочељем. Ово је неопходно за рад многих програма технологија приступачности.

/desktop/gnome/applications/at/screen_magnifier_enabled

-     false (логичка вредност)

  Ако је постављено, алати за испомоћ повезани са овим Гконф кључем биће покренути са ГДМ графичким програмом. Подразумевано је то програм лупе.

/desktop/gnome/applications/at/screen_keyboard_enabled

-     false (логичка вредност)

  Ако је постављено, алати за испомоћ повезани са овим Гконф кључем биће покренути са ГДМ графичким програмом. Подразумевано је то програм тастатуре на екрану.

/desktop/gnome/applications/at/screen_reader_enabled

-     false (логичка вредност)

  Ако је постављено, алати за испомоћ повезани са овим Гконф кључем биће покренути са ГДМ графичким програмом. Подразумевано је то програм читача екрана.

#### Повезивање Гконф кључева са алатима приступачности

За GConf кључеве screen_magnifier_enabled, screen_keyboard_enabled и screen_reader_enabled, алат за испомоћ који се покреће зависи од датотека радне површи које се налазе у ГДМ директоријуму за самопокретање, као што је описано у одељку „Подешавање самопокретања“ овог упутства. Било која датотека радне површи у ГДМ директоријуму за самопокретање може бити повезана са овим GConf кључевима навођењем тог GConf кључа у вредности AutostartCondition у датотеци радне површи. Тако би тачна линија AutostartCondition у датотеци радне површи могла бити једна од следећих:

    AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled
    AutostartCondition=GNOME /desktop/gnome/applications/at/screen_magnifier_enabled
    AutostartCondition=GNOME /desktop/gnome/applications/at/screen_reader_enabled

Када је кључ приступачности постављен на тачно (true), тада ће бити покренут сваки програм који је повезан са тим кључем у ГДМ датотеци радне површи за самопокретање (осим ако кључ Hidden није постављен на тачно у тој датотеци радне површи). Један GConf кључ може чак покренути више алата за испомоћ ако постоји више датотека радне површи са овим AutostartCondition у ГДМ директоријуму за самопокретање.

#### Пример мењања подешавања алата приступачности

На пример, ако се ГНОМ испоручује са ГОК-ом као подразумеваном тастатуром на екрану, онда се он може заменити другим програмом ако се жели. Да бисте заменили ГОК програмом тастатуре на екрану „onboard“ и додатно активирали алат за испомоћ „mousetweaks“ за подршку задржавања, потребна су следећа подешавања.

Направите датотеку радне површи за onboard и другу за mousetweaks; на пример, onboard.desktop и mousetweaks.desktop. Ове датотеке морају бити постављене у ГДМ директоријум за самопокретање и бити у формату објашњеном у одељку „Подешавање самопокретања“ овог документа.

Следи пример `onboard.desktop` датотеке:

    [Desktop Entry]
    Encoding=UTF-8
    Name=Onboard Onscreen Keyboard
    Comment=Use an on-screen keyboard
    TryExec=onboard
    Exec=onboard --size 500x180 -x 20 -y 10
    Terminal=false
    Type=Application
    StartupNotify=true
    Categories=GNOME;GTK;Accessibility;
    AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled

Следи пример `mousetweaks.desktop` датотеке:

    [Desktop Entry]
    Encoding=UTF-8
    Name=Software Mouse-Clicks
    Comment=Perform clicks by dwelling with the pointer
    TryExec=mousetweaks
    Exec=mousetweaks --enable-dwell -m window -c -x 20 -y 240
    Terminal=false
    Type=Application
    StartupNotify=true
    Categories=GNOME;GTK;Accessibility;
    AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled

Обратите пажњу на линију са AutostartCondition која повезује обе датотеке радне површи са GConf кључем за тастатуру на екрану.

Да бисте онемогућили покретање ГОК-а, датотека радне површи за ГОК тастатуру на екрану мора бити уклоњена или деактивирана. У супротном би onboard и ГОК били истовремено покренути. Ово се може урадити уклањањем gok.desktop датотеке из ГДМ директоријума за самопокретање, или додавањем подешавања кључа „Hidden=true“ у gok.desktop датотеку.

Након ових измена, ГОК се више неће покретати када корисник активира тастатуру на екрану у ГДМ сесији; уместо тога ће бити покренути onboard и mousetweaks.

### Општа подешавања сесије

ГДМ поздравник користи неке од истих радних оквира које ће користити и ваша сесија радне површи. Стога на њега утиче одређени број истих GConf подешавања. За свако од ових подешавања Поздравник ће користити подразумевану вредност осим ако није изричито прегажена а) ГДМ-овом инсталираном обавезном политиком б) системском обавезном политиком. ГДМ инсталира сопствену обавезну политику како би закључао нека подешавања ради безбедности.

### Демон ГНОМ подешавања

ГДМ омогућава следеће прикључке демона ГНОМ подешавања: a11y-keyboard, background, sound, xsettings.

Они су одговорни за ствари као што су слика позадине, подешавања фонта и теме, звучни догађаји итд.

Прикључци се такође могу онемогућити коришћењем GConf-а. На пример, ако желите да онемогућите прикључак за звук, онда поништите следећи кључ: `/apps/gdm/simple-greeter/settings-manager-plugins/sound/active`.

### Подешавање ГДМ сесије

ГДМ сесије су одређене помоћу FreeDesktop.org спецификације уноса радне површи, која се може погледати на следећој адреси: https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec.

По подразумеваним вредностима, ГДМ ће инсталирати датотеке радне површи у директоријум `<share>/xsessions`. ГДМ ће претраживати следеће директоријуме овим редом како би пронашао датотеке радне површи: `<etc>/X11/sessions/`, `<dmconfdir>/Sessions`, `<share>/gdm/BuiltInSessions` и `<share>/xsessions`. Подразумевано је `<dmconfdir>` постављен на `<etc>/dm/` осим ако ГДМ није подешен да користи другачији директоријум путем опције „--with-dmconfdir“.

Сесија се може онемогућити уређивањем датотеке радне површи и додавањем следећег реда: `Hidden=true`.

ГДМ датотеке радне површи подржавају проширење специфично за ГДМ, кључ под називом „X-GDM-BypassXsession“. Ако кључ није наведен у датотеци радне површи, вредност се подразумева на „false“ (нетачно). Ако је овај кључ постављен на „true“ (тачно) у датотеци радне површи, тада ће ГДМ покренути програм наведен кључем „Exec“ директно приликом покретања корисничке сесије. Неће покренути програм путем скрипте `<etc>/gdm/Xsession`, што је уобичајено понашање. Пошто заобилажење скрипте `<etc>/gdm/Xsession` избегава подешавање корисничке сесије са уобичајеним системским и корисничким подешавањима, сесије покренуте на овај начин могу бити корисне за уклањање грешака у системским или корисничким скриптама које можда спречавају корисника да покрене сесију.

### ГДМ корисничка сесија и подешавање језика

Корисникови подразумевани избори сесије и језика се чувају у датотеци `~/.dmrc`. Када се корисник пријави први пут, ова датотека се прави са корисниковим почетним изборима. Корисник може да промени ове подразумеване вредности једноставном променом на другу вредност приликом пријављивања. ГДМ ће запамтити ову промену за наредне пријаве.

Датотека `~/.dmrc` је у стандардном `INI` формату. Има један одељак под називом `[Desktop]` који има два кључа: `Session` и `Language`.

Кључ `Session` одређује основни назив `.desktop` датотеке сесије коју корисник жели обично да користи без проширења `.desktop`. Кључ `Language` одређује језик који корисник жели да користи по подразумеваним вредностима. Ако било који од ових кључева недостаје, користи се подразумевана вредност система. Датотека би обично изгледала овако:

    [Desktop]
    Session=gnome
    Language=cs_CZ.UTF-8

## ГДМ наредбе

### ГДМ наредбе администратора (root)

ГДМ пакет обезбеђује следеће наредбе у директоријуму `sbindir` намењене да их покреће администратор (root):

#### Опције линије наредби за `gdm`

`gdm` је главни услужни програм (daemon) који подешава графичко окружење за пријаву и покреће неопходне помоћнике.

#### Опције линије наредби за `gdm`

-?, --help

- Даје кратак преглед опција линије наредби.

--fatal-warnings

- Чини да сва упозорења доведу до изласка ГДМ-а.

--timed-exit

- Излази након 30 секунди. Корисно за уклањање грешака.

--version

- Исписује издање ГДМ позадинца.

#### Опције линије наредби за `gdm-restart`

`gdm-restart` зауставља и поново покреће ГДМ слањем HUP сигнала ГДМ позадинцу. Ова наредба ће одмах прекинути све сесије и одјавити кориснике који су тренутно пријављени помоћу ГДМ-а.

#### Опције линије наредби за `gdm-safe-restart`

`gdm-safe-restart` зауставља и поново покреће ГДМ слањем USR1 сигнала ГДМ позадинцу. ГДМ ће бити поново покренут чим се сви корисници одјаве.

#### Опције линије наредби за `gdm-stop`

`gdm-stop` зауставља ГДМ слањем TERM сигнала ГДМ позадинцу.

## Решавање проблема

Овај одељак разматра корисне савете за покретање ГДМ-а. Уопштено, ако имате проблема са коришћењем ГДМ-а, можете поднети извештај о грешци или послати е-пошту на gdm-list дописну листу. Информације о томе како да то урадите налазе се у одељку Увод овог документа.

Ако ГДМ не ради исправно, увек је добра идеја да укључите податке за отклањање грешака. Да бисте омогућили отклањање грешака, поставите кључ debug/Enable на „true“ у датотеци `<etc>/gdm/custom.conf` и поново покрените ГДМ. Затим користите ГДМ до тачке у којој не успе, и излаз за отклањање грешака ће бити послат у системску датотеку дневника (`<var>/log/messages` или `<var>/adm/messages` у зависности од вашег оперативног система). Ако ове податке поделите са ГДМ заједницом путем извештаја о грешци или е-поште, молимо укључите само податке за отклањање грешака који се односе на ГДМ, а не целу датотеку јер може бити велика. Ако не видите никакав GDM syslog излаз, можда ћете морати да конфигуришете syslog (погледајте syslog човекову страницу).

### ГДМ се неће покренути

Постоји много проблема који могу довести до неуспеха покретања ГДМ-а, али овај одељак ће размотрити неколико уобичајених проблема и како приступити проналажењу проблема са покретањем ГДМ-а. Неки проблеми ће довести до тога да ГДМ одговори поруком о грешци или прозорчетом када покуша да се покрене, али може бити тешко пронаћи проблеме када ГДМ не успе нечујно.

Прво се уверите да је Икс-сервер исправно подешен. ГДМ датотека подешавања садржи наредбу у одељку [server-Standard] која се користи за покретање Икс-сервера. Проверите да ли ова наредба ради на вашем систему. Покретање ове наредбе из конзоле требало би да покрене Икс-сервер. Ако не успе, онда је проблем вероватно у вашем подешавању Икс-сервера. Погледајте дневник грешака вашег Икс-сервера за идеју о томе шта би могао бити проблем. Проблем такође може бити у томе што ваш Икс-сервер захтева другачије опције линије наредби. Ако је тако, измените наредбу Икс-сервера у ГДМ датотеци подешавања тако да буде исправна за ваш систем.

Такође се уверите да директоријум `/tmp` има разумно власништво и овлашћења, и да систем датотека машине није пун. Ови проблеми ће довести до тога да ГДМ не успе да се покрене.

## Лиценца

Овај програм је слободан софтвер; можете га расподељивати и/или мењати под условима ГНУ-ове опште јавне лиценце коју је објавила Задужбина слободног софтвера; било верзије 2 лиценце, или (по вашем избору) било које новије верзије.

Овај програм се расподељује у нади да ће бити користан, али БЕЗ ИКАКВЕ ГАРАНЦИЈЕ; чак и без подразумеване гаранције ПРОДАЈНЕ ВРЕДНОСТИ или ПРИЛАГОЂЕНОСТИ ОДРЕЂЕНОЈ НАМЕНИ. Погледајте ГНУ-ову општу јавну лиценцу за више детаља.

Примерак ГНУ-ове опште јавне лиценце је укључен као додатак Водичу за кориснике Гнома. Такође можете набавити примерак ГНУ-ове опште јавне лиценце од Задужбине слободног софтвера посећивањем њихове веб странице или писањем на

          Free Software Foundation, Inc.
          51 Franklin Street, Fifth Floor
          Boston, MA 02110-1301
          USA