diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdebase/tdesu/index.docbook')
-rw-r--r-- | tde-i18n-ru/docs/tdebase/tdesu/index.docbook | 486 |
1 files changed, 83 insertions, 403 deletions
diff --git a/tde-i18n-ru/docs/tdebase/tdesu/index.docbook b/tde-i18n-ru/docs/tdebase/tdesu/index.docbook index 832ea0376a3..386a69f14fe 100644 --- a/tde-i18n-ru/docs/tdebase/tdesu/index.docbook +++ b/tde-i18n-ru/docs/tdebase/tdesu/index.docbook @@ -4,357 +4,111 @@ <!ENTITY kappname "&tdesu;"> <!ENTITY package "tdebase"> <!ENTITY % addindex "IGNORE"> - <!ENTITY % Russian "INCLUDE" -> <!-- change language only here --> + <!ENTITY % Russian "INCLUDE"> <!-- change language only here --> ]> <book lang="&language;"> <bookinfo> -<title ->Руководство пользователя &tdesu;</title> +<title>Руководство пользователя &tdesu;</title> <authorgroup> -<author ->&Geert.Jansen; &Geert.Jansen.mail;</author> -<othercredit role="translator" -><firstname ->Екатерина</firstname -> <surname ->Пыжова</surname -> <affiliation -><address -><email ->haleth@yandex.ru</email -></address -></affiliation -> <contrib ->Перевод на русский язык</contrib -></othercredit -> <othercredit role="translator" -><firstname ->Виктор</firstname -> <surname ->Ерёмин</surname -> <affiliation -><address -><email ->ErV2005@rambler.ru</email -></address -></affiliation -> <contrib ->Перевод на русский язык</contrib -></othercredit -> +<author>&Geert.Jansen; &Geert.Jansen.mail;</author> +<othercredit role="translator"><firstname>Екатерина</firstname> <surname>Пыжова</surname> <affiliation><address><email>haleth@yandex.ru</email></address></affiliation> <contrib>Перевод на русский язык</contrib></othercredit> <othercredit role="translator"><firstname>Виктор</firstname> <surname>Ерёмин</surname> <affiliation><address><email>ErV2005@rambler.ru</email></address></affiliation> <contrib>Перевод на русский язык</contrib></othercredit> </authorgroup> <copyright> -<year ->2000</year> -<holder ->Геерт Янсен (Geert Jansen)</holder> +<year>2000</year> +<holder>Геерт Янсен (Geert Jansen)</holder> </copyright> -<legalnotice ->&FDLNotice;</legalnotice> +<legalnotice>&FDLNotice;</legalnotice> -<date ->2005-06-07</date> -<releaseinfo ->1.00.00</releaseinfo> +<date>2005-06-07</date> +<releaseinfo>1.00.00</releaseinfo> -<abstract -><para ->&tdesu; представляет собой графическую оболочку к команде &UNIX;<command ->su</command ->.</para -></abstract> +<abstract><para>&tdesu; представляет собой графическую оболочку к команде &UNIX;<command>su</command>.</para></abstract> <keywordset> -<keyword ->KDE</keyword> -<keyword ->su</keyword> -<keyword ->пароль</keyword> -<keyword ->root</keyword> +<keyword>KDE</keyword> +<keyword>su</keyword> +<keyword>пароль</keyword> +<keyword>root</keyword> </keywordset> </bookinfo> <chapter id="introduction"> -<title ->Введение</title> - -<para ->Добро пожаловать в &tdesu;! Эта программа представляет собой графическую оболочку к команде &UNIX; <command ->su</command -> для среды &kde;. Она позволяет вам запускать программы от имени другого пользователя, если вы укажете ей пароль этого пользователя. &tdesu; является непривилегированной программой и пользуется системной программой <command ->su</command ->.</para> - -<para ->&tdesu; предлагает ещё одну дополнительную возможность — запоминание паролей. Чтобы использовать её, вам нужно ввести пароль всего один раз для каждой команды. Подробности и анализ безопасности смотрите в разделе <xref linkend="sec-password-keeping"/>.</para> - -<para ->Эта программа рассчитана на запуск из командной строки или из файлов <filename ->.desktop</filename ->. Хотя она спрашивает пароль пользователя <systemitem class="username" ->root</systemitem ->, используя графический интерфейс, мне кажется, что она скорее основана на слиянии командной строки и графического интерфейса, а не просто на графическом интерфейсе.</para> +<title>Введение</title> + +<para>Добро пожаловать в &tdesu;! Эта программа представляет собой графическую оболочку к команде &UNIX; <command>su</command> для среды &kde;. Она позволяет вам запускать программы от имени другого пользователя, если вы укажете ей пароль этого пользователя. &tdesu; является непривилегированной программой и пользуется системной программой <command>su</command>.</para> + +<para>&tdesu; предлагает ещё одну дополнительную возможность — запоминание паролей. Чтобы использовать её, вам нужно ввести пароль всего один раз для каждой команды. Подробности и анализ безопасности смотрите в разделе <xref linkend="sec-password-keeping"/>.</para> + +<para>Эта программа рассчитана на запуск из командной строки или из файлов <filename>.desktop</filename>. Хотя она спрашивает пароль пользователя <systemitem class="username">root</systemitem>, используя графический интерфейс, мне кажется, что она скорее основана на слиянии командной строки и графического интерфейса, а не просто на графическом интерфейсе.</para> </chapter> <chapter id="using-tdesu"> -<title ->Использование &tdesu;</title> - -<para ->Использовать &tdesu; просто. Синтаксис вызова следующий:</para> - -<cmdsynopsis -><command ->tdesu</command -> <group choice="opt" -><option ->-c</option -></group -> <group choice="opt" -><option ->-d</option -></group -> <group choice="opt" -><option ->-f</option -> <replaceable -> файл</replaceable -></group -> <group choice="opt" -><option ->-i</option -> <replaceable -> имя_значка</replaceable -></group -> <group choice="opt" -><option ->-n</option -></group -> <group choice="opt" -><option ->-p</option -> <replaceable -> приоритет</replaceable -></group -> <group choice="opt" -><option ->-r</option -></group -> <group choice="opt" -><option ->-s</option -></group -> <group choice="opt" -><option ->-t</option -></group -> <group choice="opt" -><option ->-u</option -> <replaceable -> пользователь</replaceable -></group -> <group choice="opt" -><option ->--nonewdcop</option -></group -> <group -><arg choice="req" -><replaceable ->команда</replaceable -> <arg -><replaceable ->аргумент1</replaceable -></arg -> <arg -><replaceable ->аргумент2</replaceable -></arg -> <arg rep="repeat" -><replaceable -></replaceable -></arg -></arg -></group -> </cmdsynopsis> -<cmdsynopsis -><command ->tdesu</command -> <arg choice="opt" ->специфические параметры &kde;</arg -> <arg choice="opt" ->специфические параметры Qt</arg -> </cmdsynopsis> - -<para ->Параметры командной строки описаны ниже.</para> +<title>Использование &tdesu;</title> + +<para>Использовать &tdesu; просто. Синтаксис вызова следующий:</para> + +<cmdsynopsis><command>tdesu</command> <group choice="opt"><option>-c</option></group> <group choice="opt"><option>-d</option></group> <group choice="opt"><option>-f</option> <replaceable> файл</replaceable></group> <group choice="opt"><option>-i</option> <replaceable> имя_значка</replaceable></group> <group choice="opt"><option>-n</option></group> <group choice="opt"><option>-p</option> <replaceable> приоритет</replaceable></group> <group choice="opt"><option>-r</option></group> <group choice="opt"><option>-s</option></group> <group choice="opt"><option>-t</option></group> <group choice="opt"><option>-u</option> <replaceable> пользователь</replaceable></group> <group choice="opt"><option>--nonewdcop</option></group> <group><arg choice="req"><replaceable>команда</replaceable> <arg><replaceable>аргумент1</replaceable></arg> <arg><replaceable>аргумент2</replaceable></arg> <arg rep="repeat"><replaceable></replaceable></arg></arg></group> </cmdsynopsis> +<cmdsynopsis><command>tdesu</command> <arg choice="opt">специфические параметры &kde;</arg> <arg choice="opt">специфические параметры Qt</arg> </cmdsynopsis> + +<para>Параметры командной строки описаны ниже.</para> <variablelist> <varlistentry> -<term -><option ->-c <replaceable ->программа</replaceable -></option -></term> -<listitem -><para ->Указать программу для запуска с правами root. Это должен быть один аргумент. Поэтому, если вы хотите запустить новый файловый менеджер, вам следует ввести следующее: <userinput -><command ->tdesu <option ->-c <replaceable ->kfm -sw</replaceable -></option -></command -></userinput ->.</para -></listitem> +<term><option>-c <replaceable>программа</replaceable></option></term> +<listitem><para>Указать программу для запуска с правами root. Это должен быть один аргумент. Поэтому, если вы хотите запустить новый файловый менеджер, вам следует ввести следующее: <userinput><command>tdesu <option>-c <replaceable>kfm -sw</replaceable></option></command></userinput>.</para></listitem> </varlistentry> <varlistentry> -<term -><option ->-d</option -></term> -<listitem -><para ->Выводить отладочную информацию.</para -></listitem> +<term><option>-d</option></term> +<listitem><para>Выводить отладочную информацию.</para></listitem> </varlistentry> <varlistentry> -<term -><option ->-f <replaceable ->файл</replaceable -></option -></term> -<listitem -><para ->Этот параметр позволяет эффективно использовать &tdesu; в файлах <filename ->.desktop</filename ->. При этом &tdesu; проверяет файл, указанный в параметре <parameter ->файл</parameter ->. Если он доступен для записи текущему пользователю, &tdesu; запустит команду с правами этого пользователя. Иначе команда будет запущена с правами пользователя <parameter ->пользователь</parameter -> (root по умолчанию).</para> -<para -><parameter ->файл</parameter -> анализируется следующим образом: если этот параметр начинается с <literal ->/</literal ->, то он считается абсолютным путём. Иначе — именем глобального файла конфигурации &kde;. Например, чтобы настроить менеджер входа в систему <application ->tdm</application ->, вам следует набрать <command ->tdesu <option ->-c tdmconfig -f tdmrc</option -></command ->.</para -></listitem> +<term><option>-f <replaceable>файл</replaceable></option></term> +<listitem><para>Этот параметр позволяет эффективно использовать &tdesu; в файлах <filename>.desktop</filename>. При этом &tdesu; проверяет файл, указанный в параметре <parameter>файл</parameter>. Если он доступен для записи текущему пользователю, &tdesu; запустит команду с правами этого пользователя. Иначе команда будет запущена с правами пользователя <parameter>пользователь</parameter> (root по умолчанию).</para> +<para><parameter>файл</parameter> анализируется следующим образом: если этот параметр начинается с <literal>/</literal>, то он считается абсолютным путём. Иначе — именем глобального файла конфигурации &kde;. Например, чтобы настроить менеджер входа в систему <application>tdm</application>, вам следует набрать <command>tdesu <option>-c tdmconfig -f tdmrc</option></command>.</para></listitem> </varlistentry> <varlistentry> -<term -><option ->-f</option -> <replaceable ->имя_значка</replaceable -></term> -<listitem -><para ->Указывает значок для диалога пароля. Вы можете указать только имя файла, без расширения.</para> -<para ->Например, чтобы запустить <command ->kfmclient</command -> и использовать значок &konqueror; в диалоге пароля, введите команду:</para> -<screen -><userinput -><command ->tdesu</command -> <option ->-i konqueror</option -> <command ->kfmclient</command -></userinput -></screen> +<term><option>-f</option> <replaceable>имя_значка</replaceable></term> +<listitem><para>Указывает значок для диалога пароля. Вы можете указать только имя файла, без расширения.</para> +<para>Например, чтобы запустить <command>kfmclient</command> и использовать значок &konqueror; в диалоге пароля, введите команду:</para> +<screen><userinput><command>tdesu</command> <option>-i konqueror</option> <command>kfmclient</command></userinput></screen> </listitem> </varlistentry> <varlistentry> -<term -><option ->-n</option -></term> -<listitem -><para ->Не сохранять пароль. Делает недоступным флажок <guilabel ->Сохранить пароль</guilabel -> в окне ввода пароля.</para -></listitem> +<term><option>-n</option></term> +<listitem><para>Не сохранять пароль. Делает недоступным флажок <guilabel>Сохранить пароль</guilabel> в окне ввода пароля.</para></listitem> </varlistentry> <varlistentry> -<term -><option ->-p</option -> <replaceable ->приоритет</replaceable -></term> +<term><option>-p</option> <replaceable>приоритет</replaceable></term> <listitem> -<para ->Устанавливает приоритет выполнения программы. Для указания приоритета используется целое число от 0 до 100, где 100 соответствует максимальному приоритету, и 0 — минимальному. По умолчанию используется 50.</para> +<para>Устанавливает приоритет выполнения программы. Для указания приоритета используется целое число от 0 до 100, где 100 соответствует максимальному приоритету, и 0 — минимальному. По умолчанию используется 50.</para> </listitem> </varlistentry> <varlistentry> -<term -><option ->-r</option -></term> -<listitem -><para ->Использовать приоритет реального времени.</para> +<term><option>-r</option></term> +<listitem><para>Использовать приоритет реального времени.</para> </listitem> </varlistentry> <varlistentry> -<term -><option ->-s</option -></term> -<listitem -><para ->Остановить сервис tdesu. Подробности в разделе <xref linkend="sec-password-keeping"/>.</para -></listitem> +<term><option>-s</option></term> +<listitem><para>Остановить сервис tdesu. Подробности в разделе <xref linkend="sec-password-keeping"/>.</para></listitem> </varlistentry> <varlistentry> -<term -><option ->-t</option -></term> -<listitem -><para ->Разрешить терминальный вывод. Это делает невозможным запоминание паролей. В основном эта возможность служит для отладки. Если вы хотите запустить обычное консольное приложение, пользуйтесь стандартным <command ->su</command ->.</para -> </listitem> +<term><option>-t</option></term> +<listitem><para>Разрешить терминальный вывод. Это делает невозможным запоминание паролей. В основном эта возможность служит для отладки. Если вы хотите запустить обычное консольное приложение, пользуйтесь стандартным <command>su</command>.</para> </listitem> </varlistentry> <varlistentry> -<term -><option ->-u</option -> <replaceable ->пользователь</replaceable -></term> -<listitem -><para ->Хотя чаще всего &tdesu; используется для запуска команд с правами root, вы можете указать имя пользователя и соответствующий пароль.</para> +<term><option>-u</option> <replaceable>пользователь</replaceable></term> +<listitem><para>Хотя чаще всего &tdesu; используется для запуска команд с правами root, вы можете указать имя пользователя и соответствующий пароль.</para> </listitem> </varlistentry> @@ -363,137 +117,63 @@ </chapter> <chapter id="Internals"> -<title ->Внутренние особенности</title> +<title>Внутренние особенности</title> <sect1 id="x-authentication"> -<title ->Аутентификация в X</title> +<title>Аутентификация в X</title> -<para ->Запускаемая вами программа будет работать с идентификатором пользователя root и, в общем случае, не будет иметь прав для доступа к вашему дисплею X. &tdesu; исправляет это, добавляя cookie аутентификации для вашего дисплея во временный файл <filename ->.Xauthority</filename ->. После завершения выполнения команды файл удаляется. </para> +<para>Запускаемая вами программа будет работать с идентификатором пользователя root и, в общем случае, не будет иметь прав для доступа к вашему дисплею X. &tdesu; исправляет это, добавляя cookie аутентификации для вашего дисплея во временный файл <filename>.Xauthority</filename>. После завершения выполнения команды файл удаляется. </para> -<para ->Если вы не используете систему X cookie, то &tdesu; обнаружит это и не будет добавлять новый cookie, однако никакой гарантии, что root получит доступ к вашему дисплею, не даётся.</para> +<para>Если вы не используете систему X cookie, то &tdesu; обнаружит это и не будет добавлять новый cookie, однако никакой гарантии, что root получит доступ к вашему дисплею, не даётся.</para> </sect1> <sect1 id="interface-to-su"> -<title ->Взаимодействие с <command ->su</command -></title> - -<para ->&tdesu; использует системную команду <command ->su</command ->, чтобы получить привилегированный доступ. В этом разделе разъясняется, как &tdesu; это делает. </para> - -<para ->Так как некоторые реализации <command ->su</command -> (например в &RedHat;) не позволяют задавать пароль из <literal ->stdin</literal -> (стандартного потока ввода), &tdesu; создаёт пару pty/tty и запускает <command ->su</command -> с файловыми дескрипторами, настроенными на этот tty.</para> - -<para ->Чтобы выполнить программу, которую выбрал пользователь, а не запустить оболочку интерактивно, используется параметр <option ->-c</option -> для <command ->su</command ->. Этот аргумент понимается всеми известными оболочками и должен быть переносимым. Команда <command ->su</command -> передаёт аргумент <option ->-c</option -> оболочке пользователя, которая и запускает программу на исполнение. Это выглядит так: <command ->su <option ->root -c <replaceable ->программа</replaceable -></option -></command ->.</para> - -<para ->Вместо прямого запуска команды пользователя через <command ->su</command ->, &tdesu; запускает небольшую программу, называемую <application ->tdesu_stub</application ->. Она (запущенная с правами требуемого пользователя) запрашивает определённую информацию от &tdesu; через канал pty/tty (потоки ввода и вывода для этой программы), а затем уже выполняет программу пользователя. Передаваемая информация: номер X-дисплея, X cookie для аутентификации (если доступен), переменная <envar ->PATH</envar -> и команда для запуска. Такая вспомогательная программа нужна, потому что X cookie содержит секретную информацию и поэтому не может быть передан в командной строке.</para> +<title>Взаимодействие с <command>su</command></title> + +<para>&tdesu; использует системную команду <command>su</command>, чтобы получить привилегированный доступ. В этом разделе разъясняется, как &tdesu; это делает. </para> + +<para>Так как некоторые реализации <command>su</command> (например в &RedHat;) не позволяют задавать пароль из <literal>stdin</literal> (стандартного потока ввода), &tdesu; создаёт пару pty/tty и запускает <command>su</command> с файловыми дескрипторами, настроенными на этот tty.</para> + +<para>Чтобы выполнить программу, которую выбрал пользователь, а не запустить оболочку интерактивно, используется параметр <option>-c</option> для <command>su</command>. Этот аргумент понимается всеми известными оболочками и должен быть переносимым. Команда <command>su</command> передаёт аргумент <option>-c</option> оболочке пользователя, которая и запускает программу на исполнение. Это выглядит так: <command>su <option>root -c <replaceable>программа</replaceable></option></command>.</para> + +<para>Вместо прямого запуска команды пользователя через <command>su</command>, &tdesu; запускает небольшую программу, называемую <application>tdesu_stub</application>. Она (запущенная с правами требуемого пользователя) запрашивает определённую информацию от &tdesu; через канал pty/tty (потоки ввода и вывода для этой программы), а затем уже выполняет программу пользователя. Передаваемая информация: номер X-дисплея, X cookie для аутентификации (если доступен), переменная <envar>PATH</envar> и команда для запуска. Такая вспомогательная программа нужна, потому что X cookie содержит секретную информацию и поэтому не может быть передан в командной строке.</para> </sect1> <sect1 id="password-checking"> -<title ->Проверка пароля</title> +<title>Проверка пароля</title> -<para ->&tdesu; проверяет введённый вами пароль и выдаёт сообщение об ошибке, если он не верен. Проверка организована с помощью выполнения программы-теста <filename ->/bin/true</filename ->. Если это возможно, то пароль считается правильным.</para> +<para>&tdesu; проверяет введённый вами пароль и выдаёт сообщение об ошибке, если он не верен. Проверка организована с помощью выполнения программы-теста <filename>/bin/true</filename>. Если это возможно, то пароль считается правильным.</para> </sect1> <sect1 id="sec-password-keeping"> -<title ->Хранение паролей</title> - -<para ->Для вашего удобства в &tdesu; реализован механизм хранения паролей. Если вас интересуют вопросы безопасности, прочитайте этот раздел.</para> - -<para ->Запоминание паролей в &tdesu; создаёт небольшую дыру в системе безопасности вашей системы. Очевидно, что &tdesu; не позволяет никому, кроме пользователей с вашим идентификатором пользоваться этими паролями. Однако если это реализовать без предосторожностей, системный уровень безопасности <systemitem class="username" ->root</systemitem -> понизится до уровня обычного пользователя (вас). И человек, который получит доступ к вашей учётной записи, получит доступ уровня <systemitem class="username" ->root</systemitem ->. &tdesu; пытается не допустить этого. Схема безопасности, используемая им, на мой взгляд, достаточно безопасна.</para> - -<para ->&tdesu; использует сервис под названием <application ->tdesud</application ->. Этот сервис ожидает команды с &UNIX;-сокета, расположенного в <filename ->/tmp</filename ->. Режим его доступа равен 0600, то есть только пользователь с вашим идентификатором может соединиться с ним. Если хранение паролей включено, &tdesu; выполняет команды через этот сервис. Он пишет команды и пароль пользователя <systemitem class="username" ->root</systemitem -> в сокет, и сервис выполняет команду <command ->su</command ->, как описано выше. После этого команда и пароль не теряются, а хранятся в течение указанного времени (устанавливается в модуле настройки). Если другой запрос на запуск такой же команды приходит в течение этого периода времени, клиент может не предоставлять пароль. Чтобы не дать человеку, получившему доступ к вашей учётной записи, украсть у сервиса пароль (например, запуском отладчика), sgid сервиса (группа при запуске) установлен в nogroup. Это не даёт обычным пользователям, в том числе и вам, получать пароли от процесса <application ->tdesud</application ->. Также этот сервис устанавливает переменную окружения <envar ->DISPLAY</envar -> в значение при запуске. Все, что сможет сделать взломщик — это запустить на вашем дисплее приложение.</para> - -<para ->Слабое место в этой схеме в том, что запускаемые программы могут быть написаны без соблюдения правил защиты (например, программы с setuid <systemitem class="username" ->root</systemitem ->). Это означает, что они могут вызвать переполнение буферов или другие проблемы, а взломщик может использовать это.</para> - -<para ->Использование хранения паролей — это компромисс между безопасностью и удобством. Подумайте и решите, что вам больше важно, и решите, будете ли вы им пользоваться.</para> +<title>Хранение паролей</title> + +<para>Для вашего удобства в &tdesu; реализован механизм хранения паролей. Если вас интересуют вопросы безопасности, прочитайте этот раздел.</para> + +<para>Запоминание паролей в &tdesu; создаёт небольшую дыру в системе безопасности вашей системы. Очевидно, что &tdesu; не позволяет никому, кроме пользователей с вашим идентификатором пользоваться этими паролями. Однако если это реализовать без предосторожностей, системный уровень безопасности <systemitem class="username">root</systemitem> понизится до уровня обычного пользователя (вас). И человек, который получит доступ к вашей учётной записи, получит доступ уровня <systemitem class="username">root</systemitem>. &tdesu; пытается не допустить этого. Схема безопасности, используемая им, на мой взгляд, достаточно безопасна.</para> + +<para>&tdesu; использует сервис под названием <application>tdesud</application>. Этот сервис ожидает команды с &UNIX;-сокета, расположенного в <filename>/tmp</filename>. Режим его доступа равен 0600, то есть только пользователь с вашим идентификатором может соединиться с ним. Если хранение паролей включено, &tdesu; выполняет команды через этот сервис. Он пишет команды и пароль пользователя <systemitem class="username">root</systemitem> в сокет, и сервис выполняет команду <command>su</command>, как описано выше. После этого команда и пароль не теряются, а хранятся в течение указанного времени (устанавливается в модуле настройки). Если другой запрос на запуск такой же команды приходит в течение этого периода времени, клиент может не предоставлять пароль. Чтобы не дать человеку, получившему доступ к вашей учётной записи, украсть у сервиса пароль (например, запуском отладчика), sgid сервиса (группа при запуске) установлен в nogroup. Это не даёт обычным пользователям, в том числе и вам, получать пароли от процесса <application>tdesud</application>. Также этот сервис устанавливает переменную окружения <envar>DISPLAY</envar> в значение при запуске. Все, что сможет сделать взломщик — это запустить на вашем дисплее приложение.</para> + +<para>Слабое место в этой схеме в том, что запускаемые программы могут быть написаны без соблюдения правил защиты (например, программы с setuid <systemitem class="username">root</systemitem>). Это означает, что они могут вызвать переполнение буферов или другие проблемы, а взломщик может использовать это.</para> + +<para>Использование хранения паролей — это компромисс между безопасностью и удобством. Подумайте и решите, что вам больше важно, и решите, будете ли вы им пользоваться.</para> </sect1> </chapter> <chapter id="Author"> -<title ->Автор</title> +<title>Автор</title> -<para ->&tdesu;</para> +<para>&tdesu;</para> -<para ->© &Geert.Jansen;, 2000</para> +<para>© &Geert.Jansen;, 2000</para> -<para ->&tdesu; написал Геерт Янсен (Geert Jansen). Эта программа основана на &tdesu;, версии 0.3, написанной Пьетро Иглио (Pietro Iglio). Мы договорились, что я буду проводить дальнейшую поддержку этой программы.</para> +<para>&tdesu; написал Геерт Янсен (Geert Jansen). Эта программа основана на &tdesu;, версии 0.3, написанной Пьетро Иглио (Pietro Iglio). Мы договорились, что я буду проводить дальнейшую поддержку этой программы.</para> -<para ->С автором можно связаться по адресу &Geert.Jansen.mail;. Пожалуйста, сообщайте мне о всех встреченных ошибках, чтобы я мог их исправить. Также жду любых предложений и комментариев.</para> +<para>С автором можно связаться по адресу &Geert.Jansen.mail;. Пожалуйста, сообщайте мне о всех встреченных ошибках, чтобы я мог их исправить. Также жду любых предложений и комментариев.</para> &underFDL; &underArtisticLicense; </chapter> </book> |