- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF90:Спецрепортаж
Материал из Linuxformat.
м (→...теперь отдыхайте!) |
м (→...теперь отдыхайте!) |
||
Строка 224: | Строка 224: | ||
Интернет полнится людьми, перенастраивающими свои дистрибутивы Linux, и мы отметили в начале, что для некоторых это весьма привлекательно. Продравшись сквозь проблемы и сумев самостоятельно их устранить, вы испытаете чувство подлинного удовлетворения. Это обряд посвящения для каждого пользователя Linux. | Интернет полнится людьми, перенастраивающими свои дистрибутивы Linux, и мы отметили в начале, что для некоторых это весьма привлекательно. Продравшись сквозь проблемы и сумев самостоятельно их устранить, вы испытаете чувство подлинного удовлетворения. Это обряд посвящения для каждого пользователя Linux. | ||
- | Мы надеемся, что вы насобирали достаточно информации, способной помочь вам при любых проблемах; мы, как минимум, дали вам хорошую отправную точку для поиска решения. Но мы будем рады, если вы обратитесь к нам со своими сложностями. Можете также посетить наши дружелюбные форумы (http:// | + | Мы надеемся, что вы насобирали достаточно информации, способной помочь вам при любых проблемах; мы, как минимум, дали вам хорошую отправную точку для поиска решения. Но мы будем рады, если вы обратитесь к нам со своими сложностями. Можете также посетить наши дружелюбные форумы (http://unixforum.org). Linux зиждется на чувстве взаимопомощи; именно так мы делаем мир лучше. [http://www.linuxformat.ru LXF] |
{{Врезка | {{Врезка |
Версия 14:27, 14 марта 2010
Проблемы Linux решены
Что, завязли? Руководство Грэма Моррисона по типичным проблемам в Linux должно стронуть вас с места.
Содержание |
Нечего стыдиться, если вы застряли на простой с виду проблеме в Linux. Знайте: множество вопросов по Linux люди задают снова и снова – и не потому, что ленятся искать ответы самостоятельно, а потому, что очень часто на это нет времени или данное проявление проблемы не похоже на обычное. Почему видеодрайверы так трудно устанавливать? Что случилось с моим интернет-соединением? Почему не устанавливается эта программа?
Linux не является причиной проблем. В наши дни можно твердо сказать, что с Linux проблем не больше, чем с любой другой операционной системой, и подавляющее их большинство – это результат почти бесконечных комбинаций оборудования, которые можно встретить на типичных ПК. Обычный источник проблем – плохо поддерживаемое оборудование или то, что пользователь не знаком с ОС. Для большинства пользователей установка диска с последней версией Ubuntu в CD- или DVD-привод окончится без неприятностей. Но некоторые общие проблемы время от времени выплывают наружу – будь то «железо» или ПО, установка или администрирование. И из-за многовариантной природы Linux и оборудования, на котором он работает, бывает трудно точно указать причину.
На последующих страницах – кроме подробных ответов по типовым проблемам – мы еще и попытаемся научить вас решать такие проблемы. Ключ к решению – понимание взаимодействия ОС и оборудования, а также работы различных компонентов вашего дистрибутива Linux. Глубокое знание Linux само по себе награда, но оно также помогает разобраться с неприятными инцидентами.
Мы должны предупредить вас, что – хотя это и очевидно – некоторые внесенные изменения могут иметь катастрофические последствия для вашей Linux-системы, если они сделаны неправильно. Поэтому обязательно обезопасьте все ваши данные: вдруг что-то пойдет наперекосяк. Нам всем случалось раскаиваться, что мы отложили резервное копирование на потом; итак, вашим первым заданием, еще до чтения, будет создание резервной копии!
Установка
Что делать, если все отказало еще до того, как дистрибутив оказался на вашем жестком диске.
У некоторых невезучих Linux даже не устанавливается. Вы-то думали, что инсталляция – самый отлаженный аспект дистрибутивов Linux, поскольку и разработчики, и пользователи должны пройти одни и те же этапы; но это, к сожалению, неверно.
Последние релизы, как Fedora Core, так и Ubuntu, намучились с процедурами установки, и хотя большинство пользователей запускает Linux без сучка без задоринки, итогом этого процесса может стать пустой экран и голый диск. Причины проблем весьма различны, но большинство из них сводится к оборудованию. Ваши шансы на успех сильно возрастут, если еще до инсталляции дистрибутива вы постараетесь сделать свою машину как можно более стандартной.
Это означает удаление всех ненужных для инсталляции устройств. Может помочь попытка использовать IDE-диск вместо более современного SATA-варианта, а также отключение ненужных карт расширения и USB-периферии. Linux отлично адаптируется, и устройства легко будет добавить после завершения процесса первоначальной установки.
Следует также убедиться, что вы используете последнюю версию BIOS для вашей материнской платы (ее можно скачать с сайта изготовителя вашей «материнки»). Номер версии BIOS мелькает на экране при включении компьютера. Его также можно проверить в меню BIOS, нажав [F2] или [F12] во время загрузки.
Прощай, ACPI!
Если проблем избежать не удалось, существует довольно большой шанс заставить вашу систему работать, отключив ACPI. Это функция управления питанием, встроенная в каждый современный BIOS/материнскую плату, но ее реализация далека от стандарта и может вызывать проблемы. Если вы хотите попробовать отключить ACPI, сделайте это из меню загрузки до того, как что-нибудь загрузится. Во-первых, большинство современных дистрибутивов Linux используют сис-тему загрузочного меню, именуемую Grub. Установлен ли Grub, можно узнать по появлению сообщения «Grub loading, please wait» после инициализации BIOS. Если вы такого не увидите, ваш дистрибутив, вероятно, использует старую альтернативу, именуемую Lilo – попробуйте более новый дистрибутив.
Увидев сообщение «Grub», нажмите клавишу Escape. Откроется меню опций для загрузки вашей системы. Нужно выделить опцию загрузки по умолчанию (обычно вверху списка) и нажать клавишу e. Далее, выделите строку, начинающуюся со слова «kernel», и снова нажмите e. Это редактирование строки конфигурации ядра для меню Grub: нужно добавить «acpi=off», нажать Enter, а затем b для загрузки вашего модифицированного пункта. Если это решит вашу проблему, можете сделать данное изменение постоянным, добавив «acpi=off» в той же строке ядра в /boot/grub/menu.lst в вашей установленной Linux-системе. Чтобы сохранить изменения на диске, вам нужно будет отредактировать этот файл с правами администратора системы.
Ошибки памяти
Ошибку вызывать может также какой-либо аппаратный компонент. Linux предъявляет к оборудованию гораздо больше требований, чем другие ОС, и поэтому первоначальная установка Linux может первой выявить признаки сбоя. Обычно главный виновник – память, т.к. при превосходном функционировании всего модуля сбои может давать одна небольшая секция. Linux старается использовать столько памяти, сколько может потребоваться для оптимизации дискового кэша или временного файла, и прихватывает ту память, которой другие операционные системы касаться не рискуют. Ошибки памяти могут возникать случайным образом и приводить к зависанию вашей машины, повреждению изображения на экране или возникновению различных случайных системных ошибок.Вы можете выяснить, в памяти ли дело, запустив программу под названием Memtest86. Она существует уже довольно долго (она унаследована от ранней версии ядра Linux). Ее нужно загружать прямо с CD/DVD-ROM или дискеты (еще помните такие?); загрузившись, она запустит исчерпывающую серию тестов вашей памяти. Если ваша память переживет эту пытку, не выдав никаких ошибок, можете быть почти уверены, что проблем с нею нет. Если Memtest что-нибудь обнаружит, придется заменить неисправный модуль (купите, одолжите или стяните другой). Стоит это примерно 2-3 тыс. рублей за 1 ГБ-модуль, но вы обнаружите, что такая замена сделает более стабильными и другие ОС на этой машине.
Одной из наиболее полезных корректив при установке Linux-системы является создание отдельного дискового раздела для домашних каталогов. Не жалейте затраченного времени: это упростит и обновление дистрибутива, и создание резервных копий ваших данных. Системные файлы храните в корневом разделе, а пользовательские данные – в home-разделе. Во время обновления убедитесь, что инсталлятор переформатирует только корневой раздел, а home-раздел не трогает.
В этом примере мы воспользовались Ubuntu, но в большинстве дистрибутивов процесс похожий. Первый шаг – позаботиться о ручном изменении таблицы разделов, не позволив инсталлятору полностью управлять выделением дискового пространства. |
Как минимум, не считая Windows-раздела, вам потребуются разделы ‘root’, ‘home’ и ‘swap’. Последний может быть небольшим (два объема ОЗУ), а размер остальных двух зависит от того, где вы собираетесь хранить свои данные. |
Наконец, укажите подходящую точку монтирования (место в вашей файловой системе) для каждого раздела: / для корневого раздела, /home для домашних каталогов и swap для оставшегося раздела. |
Оборудование
Заставить оборудование работать – не обязательно сложная задача.
- Введите lspci в окне терминала, чтобы увидеть список всех устройств, подключенных к вашей системе. Как правило, вы увидите больше информации, чем могли бы ожидать, потому что современные материнские платы зачастую объединяют несколько устройств в одно. Если ваше оборудование здесь не появилось, возможно, оно плохо подсоединено.
- Есть несколько способов растянуть ваш рабочий стол на два экрана. Стандартный метод – использование Xinerama и дублирование различных секций в xorg.conf, но в случае с оборудованием от Nvidia можно также воспользоваться инструментом от изготовителя и активировать режим «TwinView».
- Если вы хотите использовать с Linux MP3-плейер, выбирайте такой, который монтируется как внешний накопитель. Вы сможете скопировать на него свои музыкальные файлы как на USB-диск и управлять своей коллекцией при помощи обычного файлового менеджера.
- При сборке собственных приложений и драйверов в Ubuntu нужно установить базовое окружение для сборки, введя в командной строке следующее:
sudo apt-get install build-essential linux-headers-`uname -r`
- Когда вы собираете собственный модуль драйвера или устанавливаете проприетарный модуль от поставщика оборудования, вы сможете гарантировать его подгрузку во время старта системы, добавив имя модуля в файл /etc/modules.
Заставить определенные «железки» работать в Linux пока что проблема. На это есть две принципиальных причины. Во-первых, возможных комбинаций оборудования бывает множество. Типичная ситуация – когда материнская плата от одного изготовителя, видеокарта – от другого, а внешняя периферия, например, принтер, мышь и клавиатура – от толпы каких-то других сборщиков. И каждому подавай свой драйвер, а драйверы часто еще и взаимодействуют друг с другом. Понятно, что изготовитель не в силах протестировать все возможные комбинации драйверов.
Это сочетается со второй причиной: многие изготовители пока отказываются открыть спецификации своего оборудования, чтобы разработчики могли писать драйверы. Linux уже может похвастать превосходной поддержкой оборудования от Intel, IBM и AMD, но по-прежнему очень важно убедиться в совместимости нового оборудования, прежде чем выкладывать за него денежки. Следует также проверить наличие открытого драйвера для вашего оборудования, поскольку сообщество мало чем поможет, если драйвер закрыт. Чтобы разобраться в этих вещах, загляните на http://cdb.suse.de, http://www.mandriva.com/hardware или http://www.phoronix.com/lch.
Проблемные видеокарты
Типовая «горячая тема» для оборудования в Linux – заставить работать видеокарту с 3D-ускорителем. По умолчанию большинство Linux-дистрибутивов устанавливают для оборудования открытый драйвер. Последняя версия Ubuntu может прервать эту тенденцию, включив проприетарные драйверы, но покамест вы получаете видео-драйверы с открытым кодом, обеспечивающие лишь минимальную поддержку 3D-ускорения. Этого достаточно для обычного использования настольного ПК, но если вы захотите поиграть в PlanetPenguin Racer или создать сцену в Blender, ваша видеокарта не справится с нагрузкой.
Если вы собрались купить новую 3D-видеокарту, для серьезной производительности годятся лишь два поставщика. Nvidia и ATI (ныне принадлежащая AMD) предлагают к загрузке собственные закрытые драйвера для ваших карт, и каждый использует свою процедуру установки. Альтернатива для тех, кто не гонится за модной «трехмеркой» – карты Intel; это оборудование не столь мощное, зато драйверы полностью открыты. Если карта у вас уже есть, выясните, какой чипсет в ней используется (для этого наберите в командной строке lspci).
Независимо от вашего оборудования, нужно будет установить исходные коды ядра. Каждый драйвер должен быть скомпилирован именно с той версией ядра, которую вы используете. Nvidia и ATI пытаются предоставлять прекомпилированные двоичные версии для нескольких популярных ядер и дистрибутивов, но поскольку именно ядро обычно первым заменяется при установке обновлений безопасности, нет гарантии, что эти версии за ним поспевают.
Исходный код ядра можно установить с помощью менеджера пакетов вашего дистрибутива, выполнив поиск либо по ‘kernel-source’ (для систем Mandriva и Fedora), либо по ‘linux-source’ (для систем Ubuntu/Debian). Менеджер пакетов выяснит, какая версия вам нужна, поскольку требуется ее идеальное соответствие вашему рабочему ядру, и вы всегда можете проверить, какая версия ядра у вас запущена, набрав в командной строке uname -a. Инструкции по установки драйвера Nvidia см. в нашем пошаговом руководстве, справа.
После установки исходных текстов ядра, следующим шагом будет запуск для нового драйвера процедуры инсталляции, предусмотренной поставщиком, то есть скачивание двоичного пакета с сайта Nvidia или ATI. Перед запуском полученного файла нужно будет закрыть текущую сессию X Window. Некоторые дистрибутивы позволяют выйти в терминал, закрыв X-сессию, но с другими вам придется закрывать сессию вручную. Сделать это можно, введя как root либо killall gdm, либо killall kdm, чтобы остановить процесс менеджера входа в систему.
Более надежный способ достичь того же – переключить уровень исполнения (runlevel) с помощью команды init. Различные уровни исполнения настраиваются на запуск различных процессов. Например, уровень 1 (введите init 1) – обычно однопользовательская система в безопасном режиме, а уровень 5 (init 5) – ваш привычный, полноценный графический рабочий стол. На беду, здесь нет единого стандарта: различные дистрибутивы используют различные уровни исполнения. В Fedora и OpenSUSE пользователь может закрыть X-сессию, набрав init 3, а пользователям Debian/Ubuntu остается для переключения в безопасный режим только init 1.
Пустой экран
Инсталлятор ATI или Nvidia попытается изменить настройки вашего экрана для согласования с новым устройством. После установки вам нужно будет запустить gdm (или kdm для пользователей KDE) от имени root, чтобы активировать менеджер входа в систему. Если вы получите пустой экран, нужно будет либо вручную отредактировать /etc/X11/xorg.conf, либо запустить входящую в ваш дистрибутив утилиту настройки экрана. Учтите: xorg.conf не для малодушных. Это технический файл, включающий спецификации вашего оборудования, например, возможности экрана, а также установки драйверов. Вот несколько вещей, которые нужно проверить, если вы натолкнетесь на проблемы:- Убедитесь, что в секции Device конфигурационного файла подгружается правильный драйвер. Здесь должно быть либо «Driver ‘nvidia’», либо «Driver ‘fglrx’», в зависимости от вашего оборудования.
- Разрешение экрана может выходить за пределы возможностей вашего монитора. В этом случае создайте безопасное разрешение, оставив только 800х600 для всех элементов Display в секции Screen.
- Драйвер ядра может не загружаться. Наберите lsmod | grep “nvidia\| fglrx”. Если на выходе ничего не окажется, введите либо modprobe nvidia, либо modprobe fglrx, для загрузки модуля драйвера.
После установки нового драйвера ваша Linux-система сможет поддерживать графику с 3D-ускорением.
Следим за перегревом
Когда ваша система работает под нагрузкой, вполне естественно, что ее компоненты перегреваются. Мощная видеокарта весьма способствует этой проблеме: без адекватного охлаждения могут начаться всякие странные вещи. Мы сказали «странные вещи», а не что-то более определенное, поскольку невозможно предсказать, что именно может случиться. На каком-то этапе возникают ошибки, обрушиваются приложения, повреждается изображение на экране, а то и система полностью зависает. А похоже это все на ошибки памяти.
Отследить такие ошибки трудно, потому что за время перезагрузки машины оборудование охлаждается, и система опять работает как следует. Если вы заподозрили, что причиной проблем может быть перегрев, запустите инструмент слежения за температурами системы: это хорошо даже в том случае, если проблем и нет. Вывод предупреждения, что ваша система «разгорячилась» – прекрасный способ пресечь проблемы до того, как они возникли.
Многие современные машины выводят информацию о температуре в каталог /proc/acpi/thermal_zone/ в файловой системе. Если нет, попробуйте ввести modprobe thermal от имени root. Кроме того, существуют инструменты для мониторинга температуры и предупреждения о проблемах. Есть лишь один реальный претендент на роль лучшего приложения мониторинга: пакет под названием Lm-sensors. Мониторинг – это приложение уровня ядра, и когда Lm-sensors будет установлен, его собственные драйверы смогут собирать все необходимые данные.
Установка обычно сводится к поиску ‘lm-sensor’ в менеджере пакетов вашего дистрибутива, кроме того, имеет смысл установить графическую оболочку, например, не зависящий от рабочего стола Xsensors (для KDE попробуйте Ksensors). Когда он будет установлен, запустите сценарий настройки из командной строки с правами root. Просто наберите sensors-detect и нажимайте [Enter] для каждого ответа по умолчанию. По завершении, скрипт попросит вас скопировать и вставить секцию в файл /etc/modules. Это обеспечит загрузку драйверов сенсоров при следующей перезагрузке системы, и вы сможете получить доступ к температурным данным, запустив sensors из командной строки или через одну из графических оболочек, установленных одновременно с Lm-sensors.
От молчания к звучанию
Еще один источник головной боли – отсутствие звука. Без сомнения, современная звуковая подсистема в Linux очень совершенна, но она также слишком сложна, и поиски первичной причины беззвучия – занятие неблагодарное. Прежде всего проверьте все таблицы. Если вы не меняли конфигурацию оборудования, очень важно удержаться от попыток расковырять провода и динамики. Если раньше все работало, значит, настройки правильные. Возня с ними, пусть даже вы уверены, что здесь-то и причина проблемы, чревата лишь новыми бедами.Проверьте программный микшер (особенно если вы недавно модернизировали свою машину). Лучший способ это сделать – запустить какой-нибудь аудиофайл в настольном плейере и экспериментировать с уровнями различных каналов в вашем микшере. Если интерфейс командной строки в Alsamixer на ваш взгляд скудноват, можете установить и использовать инструмент под названием Alsamixergui.
Каналы, на которые следует обратить внимание – Master, PCM и Aux, но проблема со звуком в Linux заключается в том, что функции этих каналов не всегда очевидны. Например, обычная проблема – «бегунок» IEC: чтобы звук начал воспроизводиться, иногда его нужно выставить на 25%, а иногда на 0%. Поиграйте с ним, пока что-нибудь не услышите.
Оборудование Nvidia – популярный выбор среди пользователей Linux, поскольку оно предоставляет лучшую 3D-производительность, которую только можно купить. Если вы любите играть или вам нужно работать с ПО для 3D-моделирования, вопрос производительности является существенным. Необходимое условие для инсталляции драйверов Nvidia – установленный исходный код вашего Linux-ядра. Прежде чем приступить к установке драйвера, откройте менеджер пакетов вашего дистрибутива и установите пакет исходных текстов. Есть шанс обойтись и без этого, если Nvidia уже предоставляет двоичный драйвер для вашего ядра. В противном случае просто следуйте этим шагам, войдя в систему как root.
Закройте X Window или загрузитесь в консоль. Вы всегда сможете скачать последний драйвер из консоли, используя web-браузер Lynx. Введите lynx http://www.nvidia.com/object/unix.html, найдите ссылку для скачивания и нажмите <d>. |
Введите sh, а затем – имя полученного файла. Если инсталлятор возмущается, что вы не закрыли X, удалите /tmp/.X11-unix и /tmp/.X11-lock и попробуйте снова. Процесс установки выполняется автоматически; инсталлятор изменит ваш файл Xorg.conf. |
Модуль ядра будет собран и установлен. Для гарантированной его загрузки вы можете ввести modprobe nvidia. После этого остается либо перезагрузить машину, либо запустить менеджер входа в систему – gdm или kdm. |
Программное обеспечение
Тот факт, что ПО в Linux свободно, позволяет сделать многое. Но свободное ПО зачастую идет без свободной поддержки...
- Ближайший аналог инсталляционных файлов setup.exe в Linux – это Autopackage. Их довольно сложно делать, но если они доступны, то ПО устанавливается просто вихрем. Autopackage-файлы для последних релизов Gimp, Gaim и Inkskape находятся на http://autopackage.org.
- Если вам нужно запускать системный скрипт во время загрузки, просто разместите ссылку на этот скрипт в каталоге /etc/rc.local. Как вариант, пользователь может добавить скрипт к своей Gnome-сессии из меню System > Preferences > Sessions, или кинуть ссылку в ~/.kde/Autostart в случае KDE.
- Настройки рабочего стола можно найти в директориях .gnome или .kde в вашем домашнем каталоге. Копирование всего содержимого этих каталогов в другую систему перенесет большинство ваших системных установок, при условии, что вы используете одинаковые версии рабочих столов [и не забудете сменить права доступа к файлам: пользователь «user» в дистрибутиве A и дистрибутиве Б – разный пользователь, – прим. ред.].
- Менеджер пакетов можно использовать как для установки, так и для удаления ПО. Если вы ощутили недостаток места на диске, вспомните, что можно освободить немного места, удалив неиспользуемые приложения.
- Вы можете конвертировать RPM в Deb и наоборот, используя удобную утилиту под названием Alien. Создаваемые ею пакеты в критических для системы приложениях использовать не следует, но это может реально помочь, если никакие другие пакеты не доступны. См. http://kitenet.net/~joey/code/alien.html.
ПО – сложная штука. Невозможно охватить все, поскольку Linux – одна из самых распространенных и используемых ОС на планете. И она бесконечно разнообразна. Каждый из нас так или иначе сталкивается с программными проблемами. И все-таки многие проблемы возникают чаще, чем должны бы. В основном это связано с обычным для свободного и открытого ПО недостатком документации – все меняется слишком быстро, чтобы технические писатели поспевали за разработкой. А если вы разработчик-одиночка, документация обычно расположена слишком низко в списке приоритетов.
Хороший пример – композитный менеджер Compiz для сногсшибательных 3D-эффектов. Год назад он был на этапе формирования и вышел в январе 2006 года. Но за последние 12 месяцев программа созрела, к ней появились расширения, и в доказательство реального прогресса, проект распался на два (вторая ветвь известна как Beryl). Однако, несмотря на весь этот «прогресс», от жаждущих трехмерного куба чаще всего приходится слышать вопрос: а как заставить его работать? А жаждут практически все.
«Ломаем» Compiz
Для тех, кто хочет получить последний Compiz/Beryl, жизнь недавно стала заметно проще, благодаря тому, что большинство современных дистрибутивов использует сервер X.org с активированным AIGLX. Использование AIGLX означает, что больше не нужно менять используемый по умолчанию сервер X Window на Xgl. Первоначально для многих пользователей это было основным камнем преткновения. Теперь остается лишь убедиться, что для вашей видеокарты есть драйверы, поддерживающие аппаратное ускорение (см. раздел «Оборудование»), и один из пакетов – Compiz или Beryl – установлен с помощью менеджера пакетов вашего дистрибутива.
Если пакеты не предоставляются по умолчанию, потребуется добавить сторонний репозиторий. Например, в последней версии Ubuntu нужно добавить репозиторий Beryl (Ubuntu Beryl Repository, http://ubuntu.beryl-project.org) для загрузки пакетов ПО, прежде чем приступать к установке. Затем выполните Beryl-manager из командной строки – и текущая оконная рамка превратится в трясущееся желе.
Идем в ногу со временем
С «красотой» мы разобрались; следующий наиболее популярный вопрос – как устанавливать файлы из Интернета. Ответить на него сложно, поскольку здесь нет простого решения. В Linux нет эквивалента скачивания программы setup.exe и ее запуска, как делается в Microsoft Windows. Менеджер пакетов дистрибутива ближе всего подходит к установке «в один клик», но он полностью зависит от дистрибутива, обеспечивающего пакеты для нужных вам приложений. Mandriva пытается отслеживать запросы публики и предоставлять пакеты для наиболее востребованных приложений, а Ubuntu и Debian включают тысячи прекомпилированных пакетов для установки.Но с появлением нового релиза вы застреваете. Каждому охота скачать и установить последнюю версию приложения, но если вам нужны официальные пакеты, то придется подождать следующего официального релиза выбранного вами дистрибутива. Это одна из причин, почему так много людей мечутся от одного дистрибутива к другому – они бегут с корабля, чтобы получить новейшую версию пакета, недоступную в настоящее время в их текущем дистрибутиве.
Несмотря на это, есть несколько способов получить последнюю версию желанного ПО. Например, Mozilla Firefox доступен в виде статически собранного исполняемого файла – вы можете запустить эту программу сразу же, как скачаете, без размышлений о зависимостях и сценариях настройки. Вы также обнаружите, что готовые пакеты часто предоставляют сторонние разработчики (например, команда Beryl – свое композитное ПО), и установка их разработок обычно сводится к добавлению нового сервера в вашем менеджере пакетов до того, как вы решите установить свежее ПО.
С исходным кодом на «ты»
Если вам так уж нужна наисвежайшая версия, временами нет другого способа ее получить, кроме как скачать «голый» исходный код. Вид его зависит от вкуса автора, но наиболее общий метод распространения программ – упаковка исходного кода в файлы .tar.gz или .tar.bz2. Собирая свое ПО, легко нарваться на неприятности, и вообще-то это следует рассматривать как крайность – но большинство приложений можно собрать, следуя простой стандартной процедуре.
Первый шаг – убедиться, что на вашей машине установлено необходимое для сборки окружение: не только инструменты компилятора GNU, но и версии «для разработчика» всех библиотек, нужных вашей программе. Это зависимости в чистом виде, и вы можете определить их, читая сопроводительную документацию. Поняв, какие пакеты вам нужно установить, убедитесь, что вы устанавливаете ‘dev’-версию из менеджера пакетов вашего дистрибутива – это те самые файлы «для разработчика», которые нужны для сборки вашего приложения.
При установленных зависимостях большинство приложений требуют запуска ./configure и make в созданном каталоге. Именно здесь и встречаются проблемы, когда процесс сборки не может найти библиотеку или файл, от которых он может зависеть. Хитрость тут в том, чтобы найти в выводе место возникновения первой ошибки и внимательно прочитать текст, чтобы найти, какой файл пропущен.
Типичная ошибка может выглядеть как-то так: ‘libguile.h: No such file or directory’. В данном случае не найден файл libguile.h. Как правило, вы сможете определить, какой пакет нужно установить, поискав этот файл в менеджере пакетов вашего дистрибутива или даже в Интернете. В случае с Debian/Ubuntu, хороший ресурс – www.debian.org/distrib/packages. Чтобы найти необходимый для решения проблемы пакет, вы можете ввести ‘libguile.h’ в поле «Search The Contents Of Packages» на этой странице. В нашем примере нехватает пакета libguile-dev, его можно установить с помощью Synaptic. С другой стороны, владельцы Mandriva могут поискать файлы, используя графический менеджер пакетов или набрав в командной строке urpmf libguile-dev от имени root. Компиляция проблемного ПО – это вопрос внимательного просмотра сообщений об ошибках, пока не будут выполнены все недокументированные требования.
Пестрота мультимедиа
Что касается установки ПО, большинство пользователей, заполучив свой сияющий новизной Linux, первым делом желает либо послушать музыку в формате MP3, либо посмотреть в онлайне видео, закодированное с использованием проприетарного формата. Проблема заключается в том, что команды большинства дистрибутивов не хотят вступать в конфликт с законом, включая технологии, которые могут чем-то нарушить права на интеллектуальную собственность. MP3 – хороший пример, поскольку патент на его дизайн активно навязывается французской технологической компанией Thomson Consumer Electronics. Многие команды выбирают безопасную тропинку, оставляя его за пределами своего дистрибутива, поэтому-то открытые форматы, типа Ogg Vorbis, столь хорошо поддерживаются поставщиками дистрибутивов.Несмотря на эти ограничения, обычно есть возможность заставить большинство файловых форматов прекрасно работать в Linux. Например, разработанная сообществом версия RealPlayer для Linux включает лицензированное воспроизведение MP3 (см. www.real.com/linux). Но есть также возможность добавить поддержку различных форматов при помощи пакетов и репозиториев сторонних производителей. Активация Multiverse в Ubuntu позволит вам скачать пакет кодеков Win32, включающий поддержку всевозможных проприетарных форматов, а Penguin Liberation Front поддерживает также репозитории для Mandriva.
Один из наиболее частых вопросов, получаемых в Linux Format – как активировать сторонние или неподдерживаемые репозитории для вашего дистрибутива. Понятно, что процесс в каждом дистрибутиве свой, но поскольку Ubuntu – это хороший выбор для начинающих, то вот вам инструкция.
Запустите менеджер пакетов Synaptic, затем отметьте Settings > Repository. Откроется новое приложение Select Sources, в котором вы сможете активировать новые репозитории на вкладке Third Party или добавить собственный, щелкнув на New. |
Когда бы вы ни сделали изменения в базе пакетов, Synaptic потребует обновить список доступных пакетов. Просто щелкните на Reload в Synaptic, чтобы скачать новый список пакетов с различных репозиториев. |
Каждый поиск приложения теперь будет охватывать новые источники пакетов, используете ли вы Synaptic или apt в командной строке. Это самый безопасный способ добавить ПО, но сторонние пакеты могут оказаться проблемными. |
Сеть и администрирование
В наши дни грош цена тем, кто не подключен к Интернету.
- Существует множество беспроводных устройств, не поддерживаемых в Linux. Но часто их можно заставить работать, используя комбинацию Windows-драйвера и превосходное Linux-приложение по имени Ndiswrapper. Он объединяет эмуляцию Windows с магией Linux, чтобы вернуть оборудование к жизни.
- Брандмауэры зачастую понимаются неправильно, потому что пользователям Windows вдалбливают, что он должен быть у них установлен. Истина же в том, что если у вас нет портов или сетевых сервисов, запущенных на вашей машине, то нужды в брандмауэре никакой нет – вот почему Ubuntu не поставляется с преднастроенным брандмауэром.
- Если вам нужно администрировать вашу систему удаленно, попробуйте установить программу Webmin. Она позволит настраивать почти все аспекты работы вашей машины, от web-сервера до пользовательских учетных записей, и все это через браузер на удаленной машине.
- Сетевые USB-устройства, от старых телефонных модемов до новых ADSL, создают проблемы. Вы можете заставить их работать, но обычно это не стоит затраченных усилий. Гораздо проще купить дешевый ADSL-маршрутизатор и использовать подключение по Ethernet-кабелю – и никакой специальной настройки не потребуется.
- Таблицу маршрутизации (слегка запутанную) можно просмотреть, набрав route от имени root. Если у вас больше одного сетевого устройства, убедитесь, что только один маршрут отмечен как используемый по умолчанию. Можете удалить любые дополнительные маршруты по умолчанию, набрав route del default eth0, только замените ‘eth0’ на имя соответствующего устройства.
В Linux вы недалеко уйдете без подключения к сети. Несмотря на это, сейчас нет стандартного приложения для его настройки. В каждом дистрибутиве свой подход к поддержке сети, и как правило, предлагается собственная панель конфигурации или скрипт для настройки вашего соединения, а это вам не сильно поможет, если что-то поломается.
Если ваша машина отказывается выходить в Интернет, можно попробовать несколько вещей. Наиболее обычная помеха в плохо настроенной сети – ваш компьютер не может преобразовать имя сервера в IP-адрес, необходимый для установления соединения. То есть если вы наберете что-то типа ‘bbc.co.uk’ в своем браузере, сетевой уровень, отвечающий за установление соединения, будет нуждаться в конвертации его в номер, или IP-адрес. Например, bbc.co.uk на самом деле соответствует IP-адресу 212.58.228.155.
Одно в другое конвертирует DNS, сервер доменных имен. Если он не настроен, вы не сможете просматривать страницы, используя доменные имена, но тем не менее сможете использовать IP-адреса. Вот и первый ключ к решению проблемы – если доступ по IP-адресам работает, а по доменному имени – нет, значит, проблема в настройке DNS. Обычно это означает, что вы ввели неправильный адрес сервера. Адрес DNS вашего провайдера размещается в файле /etc/resolv.conf, и вам нужно проверить, что после слова ‘nameserver’ указан правильный адрес.
Общее соединение
У многих из нас сейчас больше одного компьютера, которые без интернет-соединения полезны лишь наполовину. Вы можете использовать беспроводную сеть, но есть также возможность разделять соединение, используя Ethernet-кабель, если два компьютера достаточно близко друг от друга. Если у вас нет коммутатора между этими двумя компьютерами, важно, чтобы используемый вами кабель был «перекрестным» (crossover), а не стандартным.В некоторых дистрибутивах общее соединение создается открытием панели управления на машине, подсоединенной к Интернету, и активацией соответствующей опции. Например, в Mandriva общее соединение может быть активировано на страницу Network & Internet в центре управления. Но в других дистрибутивах, особенно в Ubuntu, вам придется выполнять настройку вручную.
Намного проще настроить обе машины, если сетевые соединения используют статические адреса, а не назначаемые автоматически – особенно для машины, с которой вы хотите разделять соединение. Потому что если вы хотите, чтобы машины использовали общее соединение, имея автоматически назначаемый IP-адрес, то придется учитывать дополнительную сложность в лице DHCP-сервера. Общее интернет-соединение складывается из двух элементов: маршрутизации пакетов (forwarding) и трансляции сетевых адресов (NAT), оба они реализуются с помощью Iptables [строго говоря, это не совсем верно. Часть ядра, отвечающая за маршрутизацию, может работать и без Iptables, – прим. ред.]. Это сетевой инструмент, работающий на уровне ядра и отвечающий за управление сетевыми пакетами – обычно известный как брандмауэр. А установка брандмауэра – самый простой способ настроить общее интернет-соединение.
Firestarter – одна из наиболее популярных утилит настройки брандмауэра для Linux. При первом старте «мастер» быстрого запуска проведет вас по настройкам брандмауэра и созданию общего интернет-соединения. Он берет на себя большую часть забот по настройке Iptables, а также предоставляет в реальном времени информацию о том, какой именно процесс работает с Интернетом.
Потерянный пароль
Пароли не особо важны, если ваш компьютер стоит себе в углу, без подключения к интернету, и вы его единственный пользователь. Но как только вашу машину захочет использовать кто-то еще или вы пожелаете войти в сеть, хороший пароль становится жизненно необходимым для безопасности вашей системы. Хороший пароль, однако, плох тем, что его сложно запомнить. Самый популярный пароль, вероятно, ‘password1’, который как минимум учел желательность смешения букв и цифр. Если вы еще помните свой пароль root, достаточно войти в систему как root и назначить пароль пользователя командой passwd username. А вдруг пароль для учетной записи root вы тоже забыли? В случае Ubuntu, где и учетной записи root нету, забыть свой пользовательский пароль означает здорово влипнуть.Тогда придется перезагрузить вашу систему либо в безопасный режим, либо в режим восстановления. Обычно это применяется для решения проблем с загрузкой, но также полезно и для получения доступа с правами root без пароля. Если вы пользователь Debian или Ubuntu, при виде загрузочного меню Grub нажмите <Escape> и выберите загрузку ядра в режиме восстановления. По завершении процесса загрузки можно будет изменить пользовательский пароль обычным образом.
...теперь отдыхайте!
Интернет полнится людьми, перенастраивающими свои дистрибутивы Linux, и мы отметили в начале, что для некоторых это весьма привлекательно. Продравшись сквозь проблемы и сумев самостоятельно их устранить, вы испытаете чувство подлинного удовлетворения. Это обряд посвящения для каждого пользователя Linux.
Мы надеемся, что вы насобирали достаточно информации, способной помочь вам при любых проблемах; мы, как минимум, дали вам хорошую отправную точку для поиска решения. Но мы будем рады, если вы обратитесь к нам со своими сложностями. Можете также посетить наши дружелюбные форумы (http://unixforum.org). Linux зиждется на чувстве взаимопомощи; именно так мы делаем мир лучше. LXF
Долгое время беспроводные сети причиняли в Linux настоящие мучения. К счастью, две утилиты берут на себя большую часть головной боли, связанной с этим процессом. Менеджеры настройки сети Gnome и KDE – это нововведения, которые, по сути, идентичны. Они выступают как интерфейс между вашим сетевым оборудованием и беспроводной сетью и позволяют вам сканировать доступные сети, сохраняя профиль для тех, которые вы будете использовать. Это значительное усовершенствование по сравнению с панелью управления старых дистрибутивов. Для начала воспользуйтесь своим менеджером пакетов, чтобы установить либо Gnome network-manager, либо KNetworkManager.
Вам может потребоваться отредактировать файл /etc/network/interfaces. Он содержит вашу текущую фиксированную беспроводную конфигурацию, которую нужно будет закомментировать, чтобы менеджер настройки сети смог использовать собственные установки. |
Установленный и запущенный менеджер настройки сети можно будет найти на панели рабочего стола. Щелкните по иконке, чтобы открыть список доступных сетей, наряду с индикатором уровня сигнала и значком замка или щита, отмечающим зашифрованные сети. |
Если вы выбираете незашифрованную сеть, интернет-соединение установится автоматически. Если сеть требует ввода ключа, появится окно запроса, чтобы вы ввели в него дополнительную информацию. Если данные введены правильно, соединение будет установлено. |