Product SiteDocumentation Site

Глава 7. Решение проблем и поиск необходимой информации

7.1. Источники документации
7.1.1. Страницы руководств
7.1.2. Документы info
7.1.3. Специфическая документация
7.1.4. Интернет-ресурсы
7.1.5. Практические руководства (HOWTO)
7.2. Общие процедуры
7.2.1. Настраиваем программу
7.2.2. Наблюдение за работой демонов
7.2.3. Поиск помощи в списках рассылки
7.2.4. Отчёт об ошибке в случае сложной проблемы
Наиболее важным навыком администратора является способность справляться с любой ситуацией, известной или неизвестной. В этой главе приведены несколько методов, которые, надеемся, позволят вам изолировать причину любой встретившейся вам проблемы и таким образом решить её.

7.1. Источники документации

Прежде чем вы сможете разобраться в сути проблемы, вы должны понять теоретическую роль каждой программы, вовлечённой в данную проблему. Лучший способ сделать это — обратиться к документации программы; но поскольку документации может быть достаточно много и она может быть распределена по различным источникам, то вам следует знать о тех местах, где её можно найти.

7.1.1. Страницы руководств

Manual pages, while relatively terse in style, contain a great deal of essential information. We will quickly go over the command for viewing them. Simply type man manual-page — the manual page usually goes by the same name as the command whose documentation is sought. For example, to learn about the possible options for the cp command, you would type the man cp command at the shell prompt (see sidebar К ОСНОВАМ Оболочка, командный интерпретатор).
В страницах руководств описываются не только те команды, что доступны из командной строки, но и конфигурационные файлы, системные вызовы, функции библиотек C и так далее. Их имена иногда могут совпадать. Например, команда оболочки read совпадает с системным вызовом read. По этой причине страницы руководств организованы в виде пронумерованных секций:
  1. команды, выполняемые из командной строки;
  2. системные вызовы (функции, предоставляемые ядром);
  3. библиотечные функции (предоставляемые системными библиотеками);
  4. устройства (в Unix-подобных системах они являются специальными файлами и обычно находятся в каталоге /dev/);
  5. конфигурационные файлы (форматы и соглашения);
  6. игры;
  7. наборы макросов и стандарты;
  8. команды администрирования системы;
  9. процедуры ядра.
Вы можете указать необходимую секцию руководства: для чтения документации по системному вызову read вам следует набрать команду man 2 read. В том случае, когда секция явно не указана, страница руководства будет отображена из первой найденной секции, содержащей запрошенное имя. Поэтому man shadow выводит shadow(5), так как страницы руководства для shadow отсутствуют в секциях с 1 по 4.
Разумеется, если вам не известны имена команд, то от руководства будет мало пользы. В этом случае поможет команда apropos, которая выполняет поиск в страницах руководств, точнее, в их секциях коротких описаний. Каждая страница руководства начинается с однострочного описания. apropos выводит список тех страниц руководств, что содержат запрашиваемые ключевые слова в коротком описании. В случае правильного выбора ключевых слов вы найдёте необходимые вам команды.

Пример 7.1. Поиск cp с помощью apropos

$ apropos "copy file"
cp (1)               - copy files and directories
cpio (1)             - copy files to and from archives
hcopy (1)            - copy files from or to an HFS volume
install (1)          - copy files and set attributes
Команда man — это не единственный инструмент просмотра страниц руководств, поскольку konqueror (в KDE) и yelp (в GNOME) предоставляют аналогичную возможность. Также существует веб-интерфейс, предоставляемый пакетом man2html, который позволяет вам просматривать страницы руководств в браузере. Используйте следующий URL на компьютере, где установлен этот пакет:
Для использования этой утилиты необходим браузер. Именно по этой причине вам следует выбрать установку данного пакета на одном из ваших серверов: все пользователи локальной сети будут в выигрыше при наличии подобной службы (включая пользователей не-Linux машин) и это позволит вам не устанавливать HTTP сервер на каждой рабочей станции. В случае когда ваш сервер доступен из других сетей, доступ к этой службе желательно ограничить только локальной сетью.

7.1.2. Документы info

В рамках проекта GNU подготовлены руководства для большинства его программ в формате info, поэтому страницы руководств ссылаются на соответствующую документацию info. У этого формата есть определённые преимущества, но программа для просмотра таких документов несколько сложнее.
Программа, разумеется, называется info и она принимает имя «узла» в качестве аргумента. Документация info имеет иерархическую структуру, и если вы вызовите info без параметров, то она отобразит список узлов первого уровня. Обычно узлы носят имена соответствующих команд.
Управление навигацией по документации трудно назвать интуитивным. Возможно, что лучший способ ознакомиться с ней — это вызвать программу, ввести h (то есть «help»), затем следовать инструкциям и освоить её практически. Вы можете использовать более дружественный графический браузер в качестве альтернативы. Здесь вновь пригодятся konqueror и yelp; info2www также предоставляет веб-интерфейс.
Note that the info system is not suitable for translation, unlike the man page system. info documents are thus almost always in English. However, when you ask the pinfo program to display a non-existing info page, it will fall back on the man page by the same name (if it exists), which might be translated.

7.1.3. Специфическая документация

Каждый пакет содержит свою собственную документацию. Даже программы с минимумом документации содержат файл README, в котором присутствует интересная и/или важная информация. Эта документация устанавливается в каталог /usr/share/doc/package/ (где package является именем пакета). Если документация имеет значительный размер, то её могут исключить из основного пакета программы и поместить в отдельный пакет с именем package-doc. Основной пакет обычно рекомендует к установке пакет документации, поэтому вы можете легко его найти.
В каталоге /usr/share/doc/package/ находятся файлы, предоставляемые Debian, которые дополняют документацию и в которых детально указаны особенности или усовершенствования пакета в сравнении с обычной установкой данного программного обеспечения. Также в файле README.Debian перечислены все изменения, добавленные с целью соответствия Политике Debian. Файл changelog.Debian.gz позволяет пользователю проследить все модификации пакета в течение длительного времени: иногда бывает полезно понять, какие изменения произошли между двумя установленными версиями, в поведении которых существуют отличия. В заключение, иногда присутствует ещё и файл NEWS.Debian.gz, в котором указаны основные изменения в программе и которые могут быть интересны непосредственно администратору.

7.1.4. Интернет-ресурсы

In most cases, free software programs have websites that are used to distribute it and to bring together the community of its developers and users. These sites are frequently loaded with relevant information in various forms: official documentation, FAQ (Frequently Asked Questions), mailing list archives, etc. Problems that you may encounter have often already been the subject of many questions; the FAQ or mailing list archives may have a solution for it. A good mastery of search engines will prove immensely valuable to find relevant pages quickly (by restricting the search to the Internet domain or sub-domain dedicated to the program). If the search returns too many pages or if the results do not match what you seek, you can add the keyword debian to limit results and target relevant information.
If you do not know the address for the software's website, there are various means of getting it. First, check if there is a Homepage field in the package's meta-information (apt-cache show package). Alternately, the package description may contain a link to the program's official website. If no URL is indicated, look at /usr/share/doc/package/copyright. The Debian maintainer generally indicates in this file where they got the program's source code, and this is likely to be the website that you need to find. If at this stage your search is still unfruitful, consult a free software directory, such as FSF's Free Software Directory, or search directly with a search engine, such as Google, DuckDuckGo, Yahoo, etc.
Вы также можете заглянуть в Debian wiki — ресурс, предназначенный для совместной работы, на котором любой пользователь, даже обычный посетитель, может внести предложение непосредственно из своего браузера. Этот ресурс используется в равной мере как разработчиками для проектирования и документации своих проектов, так и пользователями, которые делятся своими знаниями и совместно работают над документацией.

7.1.5. Практические руководства (HOWTO)

Практическое руководство (HOWTO) — это документ, в котором четко, шаг за шагом, описаны действия для достижения определённой цели. Цели могут быть самыми разными, но они всегда являются техническими по своей сути: например, настройка преобразования IP адресов, программного RAID, установка сервера Samba и т. д. Эти документы зачастую пытаются охватить все возможные проблемы, которые могут возникнуть при использовании той или иной технологии.
Много руководств размещено на сайте Проекта Документации Linux (LDP), в рамках которого происходит управление подобными документами:
Вам следует скептически относиться к этим документам. Зачастую они были подготовлены несколько лет назад и поэтому могут содержать устаревшую информацию. Такое положение ещё более вероятно для переводов, поскольку обновления выполняются несистематически и не сразу после выхода обновлённой версии оригинального документа. Это следствие работы в волонтёрской среде без всяких ограничений.