Страница 18 из 57
[Еrrno 4] IOError: ‹urlopen error unknown url type: media›
Ради интереса введите данную фразу в любой поисковик: вы увидите очень много ссылок (один только Google нашел более 150 ссылок). Выходит, не один я столкнулся с такой проблемой.
Чтобы решить данную проблему, вам нужно установить пакет createrepo. Он находится на DVD (каталог Fedora/RPMS/) и не требует дополнительных пакетов, поэтому проблем с его установкой у нас не будет:
# rpm -ihv createrepo*
Затем нужно создать каталог, который будет использоваться как репозиторий пакетов. Сразу вас успокою: мы не будем копировать все пакеты с дистрибутивного DVD на жесткий диск, поэтому можете не беспокоиться относительно используемого места.
Для репозитория был создан каталог dvd-repo:
# mkdir /dvd-repo
Затем перейдите в каталог DVD, содержащий пакеты (Fedora/RpmS). Я предполагаю, что DVD "подмонтирован" к каталогу /mnt/cdrom:
cd /mnt/cdrom/Fedora/RPMS
После этого введите команду:
# createrepo -o /dvd-repo ./
Данная команда создаст в каталоге /dvd-repo репозиторий по файлам, которые находятся в каталоге /mnt/cdrom/Fedora/ RPMS. Теперь, реально, у нас есть репозиторий, но в нем нет пакетов. Понятно, что при попытке установки из такого "хранилища" мы получим сообщение ой ошибке. Поэтому нам нужно ввести следующую команду:
ln -s /mnt/cdrom/Fedora/RPMS/* /dvd-repo
Данная команда создаст в каталоге /dvd-repo символические ссылки на файлы, которые находятся на DVD. Вот и все. Осталось только настроить файл yum.conf. Для этого откройте /etc/yum.conf:
# gedit /etc/yum.conf
А затем добавьте в него следующие строки:
[base]
baseurl-file:///dvd-rеро
enabled=1
gpgcheck=0
Проверь подписей пакетов для данного репозитория и отключил, поскольку пакеты записаны на DVD - проверять подпись пакета нет смысла. После этого вы можете запустить графический менеджер пакетов - все будет работать:
# system-config-packages
Полная версия файла конфигурации yum.conf для установки пакетов с дистрибутивного DVD представлена в листинге 3.3.
Листинг 3.3. Конфигурационный файл /etc/yum.conf для установки пакетов с DVD
[main]
cachedir=/var/cache/yum
logfile=/var/log/yum.log
kеерсасhе=0
pkgpolicy=newest
distroverpkg=redhat-release
tolerant=1
exactaxch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
[base]
name=Fedora-DVD
baseurl=file:///dvdl-repo
gpgcheck=0
Приведенный мною способ решения проблемы - далеко не единственный. Если вам интересно, как другие пользователи "побороли" данную проблему, посетите следующую Web-страницу:
http://www.dkws.org.ua/phpbb2/viewtopic.php?t=1286
3.2.3. Дополнительные репозитории
Предположим, что у вac появился доступ к Интернету, но yum уже настроен на локальный источник - дистрибутивный DVD, На самом деле - это не проблема. Перейдите в каталог /etc/yum.repos.d, откройте файл нужного репозитория и установите для eго опции enabled значение 1:
enabled=1
Проблема решена.
3.2.4. Создание собственного сервера пакетов
Данный параграф больше рассчитан на администраторов сетей, которые понимают, что они делают. Обычным пользователям его можно прочитать разве что для "общего развития", хотя приведенный способ можно удачно использовать не только в сети масштаба предприятия, но и в небольшой домашней сети.
Предположим, что у нас есть небольшая (или большая - разницы нет) сеть и на некоторых компьютерах сети установлен дистрибутив Fedora. Дистрибутивный писк, понятно, один. Если компьютеров несколько, то диск будет "мигрировать" от одного компьютеру к другому и в конце концов, как это часто бывает, потеряется. Поэтому целесообразно создать собственный сервер репозиториев.
Идеи проста, как все гениальное: на одном из компьютеров, работающих под управлением Fedora, развернуть Web-сервер, в его корневой каталог поместить все пакеты с дистрибутивного DVD, создать репозиторий с помощью утилиты createrepo и настроить все остальные компьютеры в сети на использование "домашнего" репозитория.
Итак, у нас есть план действия, осталось только воплотить его в реальность. Для начала нам нужен. Web-сервер. Для определенности будем считать, что мы установили Web-сервер на компьютере с именем comp1 и IP-адресом 192.168.1.1.
Установить Web-сервер можно с помощью команды:
yum install httpd
После установки Web-сервера откройте его конфигурационный файл:
# gedit /etc/httpd/conf/httpd.conf
Найдите в нем директиву ServerName и укажите в ней доменное имя компьютера, на котором установлен Web-сеpвеp, например: ServerName comp1.firma.ru
Сохраните файл httpd.conf. После этого нужно "подмонтировать" DVD с пакетами и скопировать все файлы в /var/www/html - это корневой каталог документов Web-сервера:
# mount /dev/cdrom /mnt/cdrom
Теперь перейдите в каталог /var/www/html и создайте репозиторий:
# cd /var/www/html
# rpm -ihv createrepo* (не нужно, если createrepo уже установлена)
# createrepo ./
Все готово. Осталось только запустить Web-сервер:
# /etc/init.d/httpd start
В дальнейшем Web-сервер будет запускаться автоматически по умолчанию, поэтому вам не придется вводить эту команду каждый день.
Сервер настроен. Теперь перейдем к остальным компьютерам, которые будут использовать наш сервер пакетов. На каждом компьютере в каталоге /etc/yum.repos.d нужно создать файл internal.repo (название можно выбрать другое):
# cd /etc/yum.repos.d
# touch internal.repo
# gedit internal.repo
Содержимое файла internal.rеро представлено в листинге 3.4.
Листинг 3.4. Содержимое файла /etc/yum.repos.d/internal.repo
[internal]
name=fedora-internal
baseurl=http://comp1
enabled=1
gpgcheck=0
Если DNS-сервер в вашей сети не настроен, вместо доменного имени можно указать IP-адрес сервера пакетов: baseurl=http://192.1б8.1.1
Вот теперь никогда не возникнет "коллизий" между пользователями - теперь все они могут устанавливать пакеты одновременно.
3.2.5. Автоматическое обновление системы
Как только вы подключаетесь к Интернету, специальная программа, отслеживающая обновлении пакетов, связывается с сетевыми репозиториями и проверяет, есть ли новые версии установленных а вашей системе пакетов. Если новые версии пакетов найдены, вы увидите соответствующее сообщение (рис. 3.8.).
Рис. 3.8. Доступны обновления
При желании можно щелкнуть на кнопке Просмотр обновлений или просто закрыть окно уведомления. Просмотр обновлений позволяет выбрать пакеты для обновления, т.е. вы caми определяете, какие пакеты нужно обновлять, а какие - нет (рис. 3.9).
Рис. 3.9. Просмотр обновлений
Обновление системы помогает поддерживать вашу систему в актуальном состоянии, но постоянно обновлять систему накладно, если у вас не безлимитный Интернет. Если за каждый мегабайт трафика приходится платить свои кровные, тогда лучше вообще отключить уведомления об обновлениях. Для зтого выберите команду Система→Параметры→Персональные→Сеансы и в раскрывшемся окне Сеансы на вкладке Запускаемые при старте программы сбросьте флажок программы Уведомления об обновлениях ПО (рис. 3.10).
Pиc. 3.10. Отключение напоминаний об обновлении