|
|
<?xml version="1.0" ?>
|
|
|
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
|
|
|
<!ENTITY kappname "&ktalkd;">
|
|
|
<!ENTITY % addindex "IGNORE">
|
|
|
<!ENTITY % Russian "INCLUDE"> <!-- change language only here -->
|
|
|
]>
|
|
|
|
|
|
<book lang="&language;">
|
|
|
|
|
|
<bookinfo>
|
|
|
<title>Справочное руководство по &ktalkd;</title>
|
|
|
<authorgroup>
|
|
|
<author><firstname>David</firstname> <surname>Faure</surname> <affiliation> <address><email>faure@kde.org</email></address>
|
|
|
</affiliation>
|
|
|
</author>
|
|
|
|
|
|
<othercredit role="translator"><firstname>Илья</firstname> <surname>Яловой</surname> <affiliation><address><email>i_yalovoy@mail.ru</email></address></affiliation><contrib> Перевод на русский</contrib></othercredit>
|
|
|
</authorgroup>
|
|
|
|
|
|
<legalnotice>
|
|
|
&FDLNotice;
|
|
|
</legalnotice>
|
|
|
|
|
|
<copyright>
|
|
|
<year>2001</year>
|
|
|
<holder>David Faure</holder>
|
|
|
</copyright>
|
|
|
|
|
|
<date>2001-05-02</date>
|
|
|
<releaseinfo>1.05.02</releaseinfo>
|
|
|
|
|
|
<abstract>
|
|
|
<para>&ktalkd; это улучшенный демон <command>talk</command>, который принимает входящие <command>talk</command>-запросы, сообщает о них и позволяет вам отвечать на них с помощью клиента talk. </para>
|
|
|
|
|
|
</abstract>
|
|
|
<keywordset>
|
|
|
<keyword>KTALKD</keyword>
|
|
|
<keyword>talk</keyword>
|
|
|
<keyword>talkd</keyword>
|
|
|
<keyword>otalk</keyword>
|
|
|
<keyword>ntalk</keyword>
|
|
|
<keyword>ktalkdlg</keyword>
|
|
|
<keyword>kcmktalkd</keyword>
|
|
|
</keywordset>
|
|
|
</bookinfo>
|
|
|
|
|
|
<chapter id="introduction">
|
|
|
<title>Введение</title>
|
|
|
|
|
|
<para>&ktalkd; это улучшенный <command>talk</command>-демон, который принимает входящие <command>talk</command>-запросы, сообщает о них и позволяет вам отвечать на них с помощью клиента <command>talk</command>. </para>
|
|
|
|
|
|
<important>
|
|
|
<para>Учтите, что &ktalkd; разработан для запуска на однопользовательской рабочей станции, и его не следует запускать на машинах, с которыми работают несколько пользователей: он читает файлы конфигурации пользователей, и пользователи могут запускать с помощью демона <command>talk</command> любые команды, что очень опасно. Если на вашем компьютере есть пользователи, которым вы не доверяете, то использование &ktalkd; недопустимо. </para>
|
|
|
</important>
|
|
|
|
|
|
<para>В данном документе абонент, получающий запросы, будет называться <quote>получателем</quote>. </para>
|
|
|
|
|
|
<para>Особенности &ktalkd;:</para>
|
|
|
|
|
|
<variablelist>
|
|
|
<varlistentry>
|
|
|
<term>Автоответчик</term>
|
|
|
<listitem>
|
|
|
<para>Если получатель не вошел в систему или не отвечает после второго звонка, то запускается автоответчик: он принимает сообщение и пересылает его получателю по электронной почте. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
<varlistentry>
|
|
|
<term>Звук</term>
|
|
|
<listitem>
|
|
|
<para>При желании звонок сопровождается звуковым сигналом. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
<varlistentry>
|
|
|
<term>Оповещение в X </term>
|
|
|
<listitem>
|
|
|
<para>Если &ktalkd; компилировался с инсталлированным &kde;, то для оповещения будет вызываться диалог &kde; <command>ktalkdlg</command> Если запущен &ktalk;, то ему будет предложено осуществить оповещение самостоятельно. (Начиная с версии 0.8.8). </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
<varlistentry>
|
|
|
<term>Оповещение на нескольких дисплеях</term>
|
|
|
<listitem>
|
|
|
<para>Если вы дистанционно вошли в систему (т.е. с помощью команды <userinput><command>export</command> <envar>DISPLAY</envar>=<replaceable>...</replaceable></userinput>),то оповещение также будет произведено и на этом дисплее. Отвечать на звонок можно с любого дисплея! Если вы также вошли в систему и с помощью текстового терминала, и при этом <emphasis>не</emphasis> использовали xterms (внутреннее ограничение), то вы увидите текстовое оповещение. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
|
<term>Пересылка <emphasis> (Начиная с версии 0.8.0)</emphasis></term>
|
|
|
<listitem>
|
|
|
<para>Если вы отсутствуете, то можете настроить пересылку другому пользователю и даже на другой компьютер. Существует три метода пересылки. Подробнее смотрите раздел <link linkend="usage">Использование</link>. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
|
<term>Конфигурация</term>
|
|
|
<listitem>
|
|
|
<para>Если &ktalkd; скомпилирован под &kde;, то он читает настройки из системного конфигурационного файла &kde; - (<filename>$<envar>TDEDIR</envar>/share/config/ktalkdrc</filename>), и из пользовательского файла - в его домашнем каталоге. Системный файл конфигурации должен быть отредактирован администратором вручную, а пользователь может пользоваться специальной программой. Она называется <command>kcmktalkd</command> и после установки &ktalkd; находится в &kcontrol;. В системах без &kde; &ktalkd; использует в качестве конфигурационного файл <filename>/etc/talkd.conf</filename>. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
|
<term>Интернационализация</term>
|
|
|
<listitem>
|
|
|
<para>Под &kde;, если <command>ktalkdlg</command> переведен на ваш язык, то оповещение будет производиться в соответствии с установками &kde;. Это же относится и к программе конфигурации <command>kcmktalkd</command>. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
|
<term>Поддержка <command>otalk</command> и <command>ntalk</command> <emphasis>(Начиная с версии 0.8.1)</emphasis></term>
|
|
|
<listitem>
|
|
|
<para>&ktalkd; теперь поддерживает оба протокола, даже при пересылке. &ktalk; также поддерживает оба протокола. </para>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
</variablelist>
|
|
|
|
|
|
<para>Я надеюсь, что вы останетесь довольны демоном talk.</para>
|
|
|
|
|
|
<para>David Faure <email>faure@kde.org</email></para>
|
|
|
|
|
|
</chapter>
|
|
|
|
|
|
<chapter id="usage">
|
|
|
<title>Использование</title>
|
|
|
|
|
|
<para>Чтобы использовать &ktalkd;, вам необходим клиент <command>talk</command>. Все системы &UNIX; имеют текстовый клиент <command>talk</command>. Наберите <userinput><command>talk</command> <replaceable>username</replaceable></userinput>, чтобы проверить что будет, когда вы получите запрос <command>talk</command>. </para>
|
|
|
|
|
|
<para>Также вы можете проверить автоответчик: отправьте себе сообщение <command>talk</command>, пропустите два звонка, и тогда должен сработать автоответчик. </para>
|
|
|
|
|
|
<para>&ktalk; - это графический клиент <command>talk</command> под &kde;. Пока этот пакет не входит в стандартный набор &kde;, но вы можете найти его на сервере ftp://ftp.kde.org, по адресу <ulink url="ftp://ftp.kde.org/pub/kde/stable/latest/apps/network">ftp://ftp.kde.org/pub/kde/stable/latest/apps/network</ulink> </para>
|
|
|
|
|
|
<para>Диалоговое окно при звонке очень простое: <guibutton>respond</guibutton> или <guibutton>ignore</guibutton>. </para>
|
|
|
|
|
|
<para>С помощью диалога конфигурации вы можете настроить переадресацию другому пользователю или даже на другой компьютер. </para>
|
|
|
|
|
|
<sect1 id="choosing-a-forwarding-method">
|
|
|
<title>Выбор метода переадресации</title>
|
|
|
|
|
|
<para>Ни один из них не является идеальным, у каждого есть плюсы и минусы. </para>
|
|
|
|
|
|
<variablelist>
|
|
|
<varlistentry>
|
|
|
<term><acronym>FWA</acronym> - только оповещение о переадресации (forward announcement only).</term>
|
|
|
<listitem>
|
|
|
<para>Прямое подключение. Не рекомендуется. </para>
|
|
|
<itemizedlist>
|
|
|
<listitem>
|
|
|
<para>(+) Вы знаете кто вас вызывает, но </para>
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>(-) Вызывающий абонент должен будет ответить на ваш запрос. Это раздражает. </para>
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>(-) Не используйте, если автоответчик установлен на <quote>away</quote>. (Автоответчик не сможет выдать оповещение.) </para>
|
|
|
</listitem>
|
|
|
</itemizedlist>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
|
<term><acronym>FWR</acronym> - Переадресация всех запросов (forward all requests) с изменением информационных полей сообщения</term>
|
|
|
<listitem>
|
|
|
<para>Прямое подключение </para>
|
|
|
<itemizedlist>
|
|
|
<listitem>
|
|
|
<para>(+) Вызывающий абонент не узнает о том, что вы отсутствуете, но </para>
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>(-) Вы не узнаете, кто именно вас вызывал - только его имя пользователя, (например, вы увидите <computeroutput>talk from Wintalk@my_host</computeroutput>) </para>
|
|
|
</listitem>
|
|
|
</itemizedlist>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
|
<term><acronym>FWT</acronym> - Переадресовывать все запросы и включаться в разговор.</term>
|
|
|
<listitem>
|
|
|
<para>Без прямого подключения.</para>
|
|
|
|
|
|
<itemizedlist>
|
|
|
<listitem>
|
|
|
<para>(+) Аналогично предыдущему, но работает и без прямого подключения (например, за файрволлом). </para>
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>(+) Вам будет сообщено, с кем вы общаетесь, когда вы примете звонок </para>
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>(-) Аналогично <acronym>FWR</acronym>, вы не узнаете в оповещении названия компьютера вызывающего абонента </para>
|
|
|
</listitem>
|
|
|
</itemizedlist>
|
|
|
</listitem>
|
|
|
</varlistentry>
|
|
|
</variablelist>
|
|
|
|
|
|
<para>Используйте <acronym>FWT</acronym>, если хотите, чтобы он работал за файрволлом (и если &ktalkd; имеет доступ к обеим сетям), и <acronym>FWR</acronym> в любом другом случае. </para>
|
|
|
|
|
|
</sect1>
|
|
|
</chapter>
|
|
|
|
|
|
<chapter id="questions-and-answers">
|
|
|
<title>Вопросы и ответы</title>
|
|
|
|
|
|
<qandaset>
|
|
|
<qandaentry>
|
|
|
<question>
|
|
|
<para>Почему <systemitem class="username">root</systemitem> не получает оповещений &kde;? </para>
|
|
|
</question>
|
|
|
|
|
|
<answer>
|
|
|
<para>Потому, что автоматическлое определение пользователей может быть дырой в безопасности системы. Вы можете обойти это ограничение, добавив две строчки в файл конфигурации <command>xdm</command> (аналогично &tdm;). </para>
|
|
|
|
|
|
<note>
|
|
|
<para>Примечание : Дистрибутив S.u.S.E &Linux; содержит эти строки по умолчанию. </para>
|
|
|
</note>
|
|
|
|
|
|
<para>Эти файлы конфигурации обычно находятся в каталоге <filename class="directory">/etc/X11/xdm</filename>, или <filename class="directory">/usr/X11R6/lib/X11/xdm</filename> на других системах. Далее предполагается, что они находятся в <filename class="directory">/etc/X11/xdm</filename>, поэтому вам, возможно, потребуется уточнить их расположение.</para>
|
|
|
|
|
|
<para>Вот что вы должны сделать:</para>
|
|
|
|
|
|
<procedure>
|
|
|
<step>
|
|
|
<para>Отредактируйте или создайте новый файл <filename>Xstartup</filename>, (в каталоге конфигурации <command>xdm</command>) так, чтобы он содержал: </para>
|
|
|
<screen>#!/bin/sh
|
|
|
/etc/X11/xdm/GiveConsole
|
|
|
sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER</screen>
|
|
|
</step>
|
|
|
<step>
|
|
|
<para>и файл <filename>Xreset</filename>, который выглядит: </para>
|
|
|
<screen>#!/bin/sh
|
|
|
/etc/X11/xdm/TakeConsole
|
|
|
sessreg -d -l $DISPLAY $USER</screen>
|
|
|
</step>
|
|
|
<step>
|
|
|
<para>Убедитесь, что в файле <filename>xdm-config</filename> содержатся ссылки на эти два файла: </para>
|
|
|
<screen>DisplayManager._0.startup: /etc/X11/xdm/Xstartup
|
|
|
DisplayManager._0.reset: /etc/X11/xdm/Xreset </screen>
|
|
|
</step>
|
|
|
</procedure>
|
|
|
|
|
|
<para>Благодаря этому &tdm; (или <command>xdm</command>) включит пользователя в utmp, что, собственно, и требовалось. Я думаю, что не &konsole;, или <command>xterm</command> должны заносить туда пользователя, а именно <command>xdm</command> и &tdm;. Тем не менее, это не занесет туда пользователя как пользователя Х при <command>startx</command>... Есть какие-нибудь соображения? </para>
|
|
|
</answer>
|
|
|
</qandaentry>
|
|
|
|
|
|
<qandaentry>
|
|
|
<question>
|
|
|
<para>Почему я, будучи нормальным пользователем, не получаю оповещений &kde;? </para>
|
|
|
</question>
|
|
|
|
|
|
<answer>
|
|
|
<para>Если вы работаете в &Linux; (с подключенным <filename class="directory">/proc</filename>), такое поведение - ошибка в программе. Пришлите мне подробное описание, чтобы я смог исправить эту ошибку. </para>
|
|
|
|
|
|
<para>Если вы работаете под &Linux; 2.0.35, то это - известная ошибка ядра, которая не позволяет <systemitem class="username">root</systemitem> читать <filename class="directory">/proc</filename>. Решение этой проблемы аналогично описанному в предыдущем вопросе, запускать &tdm; или <command>xdm</command> для входа в X. Или обновить ядро! </para>
|
|
|
|
|
|
<para>Иначе, это так и должно быть. &ktalkd; не может найти пользователя, так как &kde; не включил его в utmp и используемая в &Linux; (<filename class="directory">/proc</filename>) функция определения отключена. Решение этой проблемы аналогично описанному в предыдущем вопросе, запускать <acronym>tdm</acronym> или <acronym>xdm</acronym> для входа в X. Другое решение - всегда запускать <application>xterm</application>. </para>
|
|
|
</answer>
|
|
|
</qandaentry>
|
|
|
|
|
|
<qandaentry>
|
|
|
<question>
|
|
|
<para>Как я могу просмотреть отладочную информацию &ktalkd;? </para>
|
|
|
</question>
|
|
|
|
|
|
<answer>
|
|
|
<para>Поскольку программа работает в качестве сервера, то стандартный вывод невозможен. Для того, чтобы осуществить вывод отладочной информации (например, для отправки мне отчета об ошибках!), внесите изменения в файл <filename>inetd.conf</filename>, который запускает &ktalkd; и &kotalkd;, следующим образом: </para>
|
|
|
|
|
|
<screen>talk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd -d
|
|
|
ntalk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd -d</screen>
|
|
|
|
|
|
<para>Обратите внимание на параметр <option>-d</option>. </para>
|
|
|
|
|
|
<para>Затем добавьте в файл <filename>/etc/syslog.conf</filename> следующую строчку: </para>
|
|
|
|
|
|
<screen>*.* /var/log/all_messages</screen>
|
|
|
|
|
|
<para>Чтобы все заработало, необходимо перезапустить <command>inetd</command> и <command>syslogd</command>:</para>
|
|
|
|
|
|
<screen><prompt>%</prompt> <userinput><command>killall</command> <option>-HUP inetd</option></userinput>
|
|
|
<prompt>%</prompt> <userinput><command>killall</command> <option>-HUP syslogd</option></userinput></screen>
|
|
|
|
|
|
<para>Наконец, запустите <command>talk</command>, результат будет записываться в <filename>/var/log/all_messages</filename> </para>
|
|
|
|
|
|
<para>Когда будете отправлять мне отчет об ошибках, не забудьте приложить отладочную информацию, и, конечно, номер версии &ktalkd; и файл с сообщениями <command>./configure</command>. Спасибо.</para>
|
|
|
|
|
|
</answer>
|
|
|
</qandaentry>
|
|
|
</qandaset>
|
|
|
|
|
|
</chapter>
|
|
|
|
|
|
<chapter id="copyright-and-license">
|
|
|
<title>Авторские права и лицензии</title>
|
|
|
|
|
|
<para>Поддержку и доработку &ktalkd; осуществляет David Faure, <email>faure@kde.org</email> </para>
|
|
|
|
|
|
<para>Первоначально программа написана Robert Cimrman, <email>cimrman3@students.zcu.cz</email> </para>
|
|
|
|
|
|
<para>Перевод на русский - Илья Яловой <email>i_yalovoy@mail.ru</email></para>
|
|
|
&underFDL; &underGPL; </chapter>
|
|
|
|
|
|
<appendix id="installation">
|
|
|
<title>Установка</title>
|
|
|
|
|
|
<sect1 id="how-to-obtain-ktalkd">
|
|
|
<title>Где взять &ktalkd;</title>
|
|
|
|
|
|
<para>&ktalkd; стандартно поставляется в составе проекта &kde; <ulink url="http://www.kde.org">http://www.kde.org</ulink> и входит в пакет tdenetwork. </para>
|
|
|
|
|
|
<para>Вы всегда можете скачать последнюю версию &ktalkd; с главного &FTP; сайта проекта &kde;, <ulink url="ftp://ftp.kde.org/pub/kde">ftp://ftp.kde.org/pub/kde</ulink> или одного из его зеркал. Он обычно находится в <ulink url="ftp://ftp.kde.org/pub/kde/stable/latest/apps/network">ftp://ftp.kde.org/pub/kde/stable/latest/apps/network</ulink> </para>
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="requirements">
|
|
|
<title>Требования</title>
|
|
|
|
|
|
<para>Для успешной компиляции &ktalkd; вам необходима последняя версия &kde; и библиотеки &Qt;. Все библиотеки и сам ktalkd можно найти на <ulink url="ftp://ftp.kde.org/pub/kde/">ftp://ftp.kde.org/pub/kde/</ulink>. </para>
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="compilation-and-installation">
|
|
|
<title>Сборка и установка</title>
|
|
|
|
|
|
<para>Чтобы собрать и установить &ktalkd; в вашей системе, наберите следующее в корневом каталоге дистрибутива &ktalkd;: </para>
|
|
|
|
|
|
<screen><prompt>%</prompt> <userinput><command>./configure</command></userinput>
|
|
|
<prompt>%</prompt> <userinput><command>make</command></userinput>
|
|
|
<prompt>%</prompt> <userinput><command>make</command> <option>install</option></userinput></screen>
|
|
|
|
|
|
<para>Поскольку &ktalkd; - демон, то для <userinput><command>make</command> <option>install</option></userinput> потребуются права <systemitem class="username">root</systemitem>.</para>
|
|
|
|
|
|
<para>Не забудьте обновить файл <filename>/etc/inetd.conf</filename>. На пример, в &Linux;, если &kde; находится в <filename class="directory">/opt/kde</filename>, измените строки, касающиеся <command>talk</command> и <command>ntalk</command> на: </para>
|
|
|
|
|
|
<screen>talk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd
|
|
|
ntalk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd</screen>
|
|
|
|
|
|
<para>Скрипт должен произвести все необходимые изменения автоматически. Обновите <filename>inetd.conf</filename> запустив</para>
|
|
|
|
|
|
<screen><prompt>%</prompt> <userinput><command>./post-install.sh</command></userinput></screen>
|
|
|
|
|
|
<para>В любом случае вам потребуется после этого <emphasis>перезапустить inetd</emphasis>. В большинстве систем &Linux; необходимо набрать: </para>
|
|
|
|
|
|
<screen><prompt>%</prompt> <userinput><command>killall</command> <option>-HUP inetd</option></userinput></screen>
|
|
|
|
|
|
<para>В новых системах, которые используют <command>xinetd</command>, больше не существует <filename>/etc/inetd.conf</filename>, и вы должны отредактировать или создать файл <filename>/etc/xinetd.d/talk</filename>, заменив следующие строки: </para>
|
|
|
|
|
|
<screen>service talk
|
|
|
{
|
|
|
socket_type = dgram
|
|
|
wait = yes
|
|
|
user = root
|
|
|
server = /usr/bin/ktalkd
|
|
|
}
|
|
|
|
|
|
service ntalk
|
|
|
{
|
|
|
socket_type = dgram
|
|
|
wait = yes
|
|
|
user = root
|
|
|
server = /usr/bin/ktalkd
|
|
|
}</screen>
|
|
|
|
|
|
<para>а затем перезапустить <command>xinetd</command>. </para>
|
|
|
|
|
|
<para>Сообщайте мне о всех изменениях, которые вы внесли для нормальной компиляции и работы &ktalkd; в вашей системе. </para>
|
|
|
</sect1>
|
|
|
|
|
|
</appendix>
|
|
|
|
|
|
</book>
|