Журнал LinuxFormat - перейти на главную

LXF107:Ответы

Материал из Linuxformat
Перейти к: навигация, поиск

Содержание

Ответы

1 Внутренняя информация

В Я в основном работаю в окружении Windows, но постоянно стараюсь перейти на Linux; одна отсутствующая в нем вещь разочаровывает меня – это хорошая видимость используемых устройств и их статус с привязкой к драйверам. Стесняюсь и сказать, но менеджер устройств Microsoft – хорошая работа. Если ли в Linux что-нибудь, предоставляющее похожую информацию?

Дэвид Хилл [David Hill]

O Данная ситуация в Linux в корне отличается: большинство драйверов включены в ядро, и нет большой нужды сравнивать установленные и запущенные драйвера с доступными на сайтах. Если вы будете регулярно обновлять ваш менеджер пакетов, он будет информировать вас о новых версиях. Есть также множество программ, сообщающих о статусе оборудования – частью стандартных, а частью специфичных для дистрибутива. Одна из моих фавориток – lshw (http://ezix.org/project/wiki/HardwareLiSter); она в основном используется в консоли и выдает детальный список всех частей компьютера, от материнской платы до процессора и USB-устройств. По умолчанию вывод делается в виде простого текста, но можно также сгенерировать HTML для просмотра в браузере или открыть окно, кликнуть на элемент и получить больше информации. Программа имеет ряд опций для ограничения выводимых данных, например, по типу устройств, или удаления из вывода конфиден- циальной информации вроде серийных номеров.

Похожая программа – HardInfo (http://hardinfo.berlios.de) – отображает в графическом режиме множество сведений об оборудовании и программах. Она выводит информацию в виде дерева, и вы можете перейти к интересующим вас подробностям. В программе есть секция, показывающая загруженные модули ядра, так что можно увидеть, какие драйверы использует ваше оборудование. Эти программы лучше запускать от имени суперпользователя (root) или через sudo, чтобы обеспечить считывание всей возможной информации с вашей системы.

Основные окружения рабочего стола имеют свои программы: Gnome Device Manager и KInfoCentre в KDE, предоставляющие похожие сведения. Различные дистрибутивы также имеют собственные варианты подобных приложений: Device Manager в Ubuntu (он ближе всех к программе в Windows, по крайне мере, мне так показалось при его использовании), Yast в SUSE и Control Centre в Mandriva – все предоставляют информацию об оборудовании. Программы от SUSE и Mandriva интегрированы во всеобъемлющие административные оболочки, поэтому они также имеют опции для настройки оборудования там, где это возможно. НБ

2 Мучения мигранта

В Я установил Ubuntu c DVD из LXF104, и все шло хорошо. Я был восхищен интерфейсом пользователя и сумел наладить работу с сетью. Настройка Nvidia и принтера также прошли легко и непринужденно. Увы, этим все и закончилось.

Я решил установить кое-какое ПО и начал с FlightGear: распаковал файлы и попытался найти инструкцию по установке или, как я делал в Windows, установочный EXE-файл. В конце концов я нашел инструкции – явно рассчитанные на программистов – говорящие, как скомпилировать программу. Последовал этим инструкциям буквально в командной строке, но в итоге получил только кучу ошибок.

Я не сдался и попробовал выполнить инструкции по установке Toribash. Первая часть работала, но когда я напечатал toribash_ubuntu7 в командной строке, то получил ошибку “bash: toribash_ubuntu7; command not found”.

Я бы с радостью выбросил или по крайней мере отложил бы в сторонку Windows, но если в Linux так сложно устанавливать программы, то, боюсь, еще пару лет Windows у меня поживет. Описания всяческих программ в вашем журнале фантастические, но какая в них польза, если нормальному человеку их не поставить? Почему ни один из создателей программ, вложив в них огромную энергию, ум и самоотвержен ность, не мог написать простой install.exe под Linux для тех, кто пытается влиться в Linux, или придумать другой механизм?

Алистер Гилмор [Alastair Gilmore]

O Одна из самых больших проблем при исследовании новой ОС – это необходимость «отучить» себя идти привычным путем. Linux – не Windows, и многие вещи в нем сделаны иначе; инсталляция ПО – один из самых ярких примеров. Существует три основных пути установки программ в Linux: компиляция из исходных кодов, загрузка пакетов с сайта программы (или DVD) и установка через менеджер пакетов вашего дистрибутива. Второй способ близок к подходу Windows, хотя и не применяет исполняемых файлов – пакет содержит все необходимое и загружается с помощью специального менеджера. Если доступен Deb-пакет, установите его с помощью команды

sudo dpkg --install someprogram.deb

Этот способ работает, но страдает от некоторых ограничений, как и метод Windows. Вам надо заново посетить сайт и узнать о наличии обновлений, возможен конфликт с другим установленным ПО, и у вас нет информации о целостности загруженного пакета. Всего этого можно избежать, используя менеджер пакетов дистрибутива и репозитории. Репозиторий – это коллекция пакетов, собранных и протестированных для вашего дистрибутива и проверенных на отсутствие проблем с безопасностью. Пакеты подписаны цифровой подписью и проверяются менеджером пакетов, что обеспечивает «чистоту» загружаемого ПО. Это не только лучший способ установки программ, но также и самый удобный, и включает все, что вы хотите. Просто запустите Synaptic (в случае Ubuntu), нажмите кнопку Search [Поиск], выберите из найденного то, что вы хотите установить, и нажмите Apply [Применить]. Менеджер заботливо отыщет необходимые пакеты, включая любые зависимости (пакеты, необходимые вашему для работы), скачает и установит их, а также проинформирует вас о любых доступных обновлениях.

Некоторые графические менеджеры пакетов, например, Yast от SUSE, могут выполнять установку из скачанных вами пакетов или найденных на DVD, но Synaptic пока этого не делает, так что без dpkg не обойтись.

Если вы хотите скомпилировать программу из исходных текстов, вам понадобится пакет build-essentials – установите его с помощью Synaptic.

Ошибка Toribash произошла потому, что Linux может искать команды только в списке специальных директорий, который из соображений безопасности исключает текущий каталог. Для запуска команды, находящейся в данной директории, применяется префикс ./, т.е. ./toribash_ubuntu7. МС

3 Конфуз UUID

В У меня Ubuntu 7.10, и я задумал переразбить мой жесткий диск и перенести /home на новый отдельный раздел, как было описано в статье Джека Найта в LXF100/101, но без шифрования. Но тут возник ряд вопросов, и прежде чем совершить этот поступок, я хотел бы посоветоваться.

Из статьи, а также из тех книг, которые я прочел, непонятно, как дать знать операционной системе, где находится новый раздел /home. Инструкции в статье применимы к ситуации, когда процесс шифрования завершен.

По-моему, ответ должен лежать в fstab, поэтому я заглянул в него (прилагаю копию) и обнаружил, что существующий раздел Linux имеет запись UUID, которая, откровенно говоря, непостижима. Нормальные записи fstab для двух разделов Linux, похоже, закомментированы:

# /dev/sda3
UUID=ff773431-fb57-48b4-bb55-01da6902c372 /ext3 defaults,errors=remount-ro 0 1

Если я запускаю GParted из меню System/Administration, то не могу изменить размер разделов Linux – я думаю, потому, что они смонтированы, и это очень опасное занятие – редактировать смонтированные разделы. А вот Live CD-версия GParted позволяет редактировать любой раздел на моем компьютере.

Джон Пейтон [John Paton]

О Вы на правильном пути в попытках добавления нового /home в /etc/fstab. Запись обычно выглядит похожей на

/dev/sda5 / ext3 defaults,errors=remount-ro 0 1

Но, как Вы обнаружили, Ubuntu использует UUID вместо номеров разделов. Закомментированная строка просто показывает, к чему относился UUID в момент установки. UUID – это уникальный идентификатор, применяемый к файловой системе при ее создании, и он не меняется в течение всей ее жизни. Если вы хотите ужать /dev/sda2 и добавить другой раздел между ним и текущим sda3, то последний будет изменен на sda4, и обычный fstab уже не будет работать, а fstab в стиле Ubuntu останется действительным благодаря сохранению все того же UUID.

Для добавлении новой домашней файловой системы есть несколько вариантов. Можно сделать это известным вам способом, используя стандартный метод /dev/xxx и зная, что при перемещении разделов понадобится редактировать fstab. Или можно пойти путем Ubuntu, используя команду vol_id для получения UUID нового раздела.

 $ sudo vol_id /dev/sda5
 ID_FS_USAGE=filesystem
 ID_FS_TYPE=reiserfs
 ID_FS_VERSION=3.6
 ID_FS_UUID=e242a0ee-f07e-45f2-a104-c8603ccfbe04
 ID_FS_UUID_ENC=e242a0ee-f07e-45f2-a104-c8603ccfbe04
 ID_FS_LABEL=
 ID_FS_LABEL_ENC=
 ID_FS_LABEL_SAFE=

Здесь вы можете увидеть UUID для файловой системы и скопировать его в fstab. Есть и третий вариант, и вывод vol_id дает вам подсказку – метка файловой системы; это метод, предпочитаемый Red Hat/Fedora. Как и UUID, метка не меняется при добавлении разделов, но она легче читается. Все, что вам нужно – дать метку вашему разделу командой

 e2label /dev/sda5 HOME

затем отредактировать /etc/fstab так:

 LABEL=HOME / ext3 defaults,errors=remount-ro 01

Сменить метку существующей файловой системы ext3 можно с помощью e2label без нарушения содержимого, так что вы можете дать имя своему корневому разделу и исправить fstab. Файловые системы, отличные от ext3, все имеют свои собственные инструменты для задания метки тома, вы даже можете пометить свой раздел swap с помощью mkswap -L ....

Вы правы, что GParted не работает со смонтированными разделами, но вам не нужен отдельный LiveCD; можно загрузиться с установочного диска Ubuntu и запустить его оттуда. НБ

4 Аквариум на рабочем столе

В У меня запущен Gnome в Mint 4.0, дистрибутиве на базе Ubuntu 7.10. Можно ли установить хранитель экрана Sherman’s Aquarium? Я устано вил его, и он запускается как апплет панели Gnome, и я могу вручную стартовать большую версию из командной строки, но он не появляется как хранитель экрана в соответствующем списке. Похоже, что последний берется из конфигурационных XML-файлов, но я не хочу с ними возиться, не представляя, как это делать.

liegerm, с форумов

О Sherman’s Aquarium работает с XscreenSaver, но не с Gnome-screensaver. XScreenSaver по умолчанию не установлен в Linux Mint, поэтому первым шагом будет его добавление. Установка программы Sherman’s Aquarium обычным путем (через менеджер пакетов Synaptic) не включает ее в список хранителей экрана XScreenSaver – возможно, потому, что этот способ считается «левым».

Для добавления в список нужно отредактировать файл .xscreensaver в вашей домашней директории. Если он не существует, запустите xscreensaver-demo для его создания с настройками по умолчанию. Теперь откройте файл и найдите в нем строку programs:. Добавьте после нее:

“Sherman’s aquarium” shermans -root \n\

Затем запустите xscreensaver-demo для настройки хранителя экрана. Наконец, Вам надо убедиться, что XScreenSaver запускается при старте сессии, и отключить Gnome-screensaver. Зайдите в System > Preferences > Sessions, нажмите Add, напечатайте соответствующее имя и описание и установите команду в

xscreensaver -nosplash

Отключите Gnome-screensaver, выйдите и зайдите снова, и Ваш рабочий стол будет кишеть рыбками. ГМ

5 Широкополосный беспроводной модем

В Я купил Linux Format Февраль 2008 с Mandriva 2008 [LXF102]. Я использовал продукты Microsoft 25 лет и должен признать, что Linux в корне отличается и по-настоящему требует иных решений. Но все равно числю себя под знаменами «L». На моем настольном компьютере я пользуюсь беспроводным широкополосным модемом Maxon модели BP3-EXT для доступа в Интернет из Windows XP. Мой провайдер Bigpond в Австралии проинформировал меня, что не поддерживает операционную систему Linux. Могу ли я подключиться к Интернету?

Питер Барнс [Peter Barnes]

О Ответ на ваш вопрос «да», но я подозреваю, что вы также хотите знать, как. У вас последовательный USB-модем: хотя для соединения с Интернетом он использует беспроводную сеть, в компьютере он выглядит как обычный телефонный модем. Заставить его работать в Linux можно с помощью весьма простых шагов. Первый – скачать драйвер и обеспечить его загрузку при каждом запуске. Второй – установить ПО для соединения. Модем нуждается в последовательном USB-драйвере, который присутствует в каждом дистрибутиве, но требует настройки для работы с вашим модемом, и для этого вам нужен его ID и ID изготовителя. Вы можете найти их, запустив lsusb в терминале от имени root или исследовав вывод dmesg (сообщения ядра). Откройте root-терминал, подключите модем и запустите

dmesg | tail -n 20

чтобы увидеть последние двадцать строк сообщений ядра и найти нечто вроде этого:

usb 2-4.4: new full speed USB device using ehci_cd and address 8
usb 2-4.4: new device found, idVendor=16d8, idProduct=6280

Теперь, используя значения из dmesg (они могут отличаться от приведенных здесь), загрузите драйвер:

modprobe -v usbserial vendor=0x16d8 product=0x6280

Повторный запуск dmesg должен показать

usbcore: registered new interface driver usbserial drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
usbserial_generic 2-4.4:1.0: generic converter detected
usb 2-4.4: generic converter now attached to ttyUSB0
usbserial_generic 2-4.4:1.1: generic converter detected
usb 2-4.4: generic converter now attached to ttyUSB1
usbserial_generic 2-4.4:1.2: generic converter detected
usb 2-4.4: generic converter now attached to ttyUSB2

и это означает, что вам удалось благополучно загрузить драйвер и активировать модем. Вы можете обеспечить это при загрузке, добавив usbserial в /etc/modules.preload и следующую строку – в /etc/modprobe.conf:

options usbserial vendor=0x16d8 product=0x6280

Теперь переключитесь в режим обычного пользователя. Как Вы можете видеть в выводе dmseg, модем представлен как три устройства. То, которое Вам нужно – /dev/ttyUSB1, поэтому запускайте KPPP и настраивайте новое соединение, используя /dev/ttyUSB1 как устройство-модем, “*99#” как номер для дозвона и прочие параметры подключения, предоставленные вашим провайдером. Настроив модем, установите Flow Control на Hardware и выключите Wait for dial tone before dialling. НБ

6 ИнтерНЕТ или ИнтерДА?

В Я испробовал несколько дистрибутивов, включая Fedora, Mandriva и SUSE, и везде имел две проблемы. Первая заключалась в том, что Firefox постоянно терял связь с Интернетом, выдавая сообщение ‘timed out’ каждый раз, когда я пытался его обновить, хотя с Konqueror не было никаких проблем.

Вторая проблема в том, что иногда после нескольких минут, а иногда через час или два экран застывал и не реагировал на указатель мыши, который продолжал двигаться. Я использую видеокарту Nvidia, но безуспешно пытался установить проприетарные драйвера для нее. Попробовал Ubuntu Feisty с DVD LXF94, прочитав, что там есть простой метод установки драйверов Nvidia; сработало очень легко, и теперь мой экран перестал надолго застывать. Я также обнаружил, что Firefox работает в Feisty, как и обновления. Затем я решил попробовать Ubuntu Gutsy, когда он появился на DVD LXF100/101. Оказалось, что драйвера Nvidia не устанавливаются, и подключиться к Интернету тоже нельзя, и обновления не работают. Проблемы Firefox вернулись, а Konqueror продолжал работать.

Это проблема в моем компьютере или в настройках, и почему тогда работал Ubuntu Feisty?

Дэвид Сайкс [David Sykes]

О Проблемы с интернет-соединением почти наверняка возникали из-за того, что ваш браузер пытался общаться с модемом или маршрутизатором через IPv6. Если соединение не работает через IPv6, то система предполагает возврат к старому IPv4. Однако некоторые маршрутизаторы не делают этого и сбиваются, когда клиент использует IPv6, а исходящее соединение (ваш провайдер) – нет.

Есть три решения: исправить маршрутизатор, выключить IPv6 на системном уровне или выключить его в браузере. Будет полезно проверить сайт изготовителя маршрутизатора и посмотреть на нем наличие обновлений прошивки. После перепрошивки проблема может полностью исчезнуть.

Если нет, можно велеть вашему компьютеру не использовать IPv6, чтобы Firefox или любая другая программа даже не пыталась соединиться с маршрутизатором таким образом. Выключите IPv6, добавив или отредактировав следующие две строки в файле конфигурации модулей, а именно /etc/modprobe.d/aliases в Ubuntu, или, в других дистрибутивах, /etc/modprobe.conf или /etc/modules.d/aliases.

 alias net-pf-10 off
 alias ipv6 off

Они должны заместить любые имеющиеся строки со ссылкой на IPv6. Третий способ, который нужно применять, если ничего не помогло, это выключить IPv6 в Firefox, но он не поможет ничему кроме браузера. Наберите about:config' в строке адреса Firefox, затем IPv6 в поле Filter. Если network.dns.disableIPv6 установлена в False, кликните на нее правой кнопкой и отметьте пункт в меню для смены на True.

Большинство дистрибутивов теперь имеют драйвера Nvidia в своих репозиториях, но их установка также проста, если скачать пакет с ними с http://www.nvidia.com. Нажмите Ctrl+Alt+F1 для переключения с графического окружения в консоль, зайдите как root (или запустите sudo -i в Ubuntu), затем выполните команду

 init 3
 sh NVIDIA-Linux-XXXX-pkg1.run
 nvidia-config
 init 5

Пользователи Debian и Ubuntu должны заменить первую и последнюю команду, выключающую и включающую X-сервер, на

 /etc/init.d/dm stop
 /etc/init.d/dm start

Установщик Nvidia не запустится, если увидит X-ы, отсюда необходимость переключения в консоль и их останова. Часть инсталляционного процесса может подразумевать компилирование модуля для Вашего ядра, и если произойдет сбой, убедитесь, что у Вас установлен пакет build-essentials. Nvidia-config модифицирует файл настроек X для использования нового драйвера. НБ

7 Просто вставь в розетку

В У меня есть dLAN HomePlug 85Mbps Ethernet Starter Kit от Devolo. Devolo предоставляет программную утилиту для включения шифрования между устройствами, но я не знаю, как установить эту программу.

Скотт [Scott]

О Это пакет исходных текстов: его нужно скомпилировать, предварительно установив несколько требуемых зависимостей с помощью Synaptic. Dlanconfig зависит от libpcap, который по умолчанию уже установлен в Ubuntu, но для новой компиляции необходим пакет libpcap-dev. Вам также понадобится пакет build-essentials, включающий компилятор и другие инструменты, необходимые для сборки ПО из исходников. Установив их через Synaptic, откройте терминал и зайдите в директорию, содержащую скачанный с http://www.devolo.com файл. Затем запустите

tar xf dLAN-linux-package-XX.tar.gz
cd dLAN-linux-package-XX
./configure
make cfgtool
sudo make install-cfgtool

Первые две строки распаковывают архив и меняют директорию на содержащую полученные в результате файлы. Следующие две собирают инструмент настройки из исходных кодов, а последняя строка устанавливает его в систему. Если вы вдруг захотите удалить это ПО, повторите процесс, заменив последнюю команду на

sudo make uninstall

Теперь вы можете запустить программу с помощью sudo dlanconfig eth0 и сменить свои пароли. вам может понадобиться секретный код устройства, который нельзя прочесть, когда оно подключено, поэтому позаботьтесь об этом заранее. Запустите Dlanconfig и выберите опцию смены удаленного пароля, при этом сменится также и пароль локального устройства. Если Вы сперва смените его на локальном устройстве, то не сможете потом подключиться к удаленному устройству, так как пароли не совпадут.

Если у вас USB-версия устройства dLAN, надо будет изменить последние две строчки процесса сборки на

make usbdriver
sudo make install-usbdriver

или просто

make
make install

чтобы инсталлировать обе версии. Собранный USB-драйвер требует наличия исходных текстов ядра, поэтому сперва используйте Synaptic, чтобы установить пакет linux-source. НБ

Персональные инструменты
купить
подписаться
Яндекс.Метрика