Обновление linux rosa через терминал
Если вы хотите получить гарантированно рабочую и надежную систему, то самый лучший способ получить ее — это установить систему с нуля, использовав официальный образ этой системы. Поскольку ROSA 2012 Marathon имеет статус релиза с длительным временем поддержки, мы рекомендуем произвести апгрейд дистрибутивов РОСА 2011 и Мандрива 2011 на эту систему.
Приведенное руководство описывает список действий, необходимых для обновления системы с предыдущего релиза, но НЕ может гарантировать его успешность в 100% случаев. Возможно, некоторые приложения, самостоятельно установленные вами в систему из неподдерживаемых репозиториев, будут несовместимы с тем релизом, апгрейд до которого вы производите. О наличии таких приложений вы узнаете перед обновлением.
Предварительные действия
Перед обновлением в обязательном порядке требуется прочесть официальные заметки по релизу, в которых приведена полезная информация о том, что изменилось в новом релизе и что нового там можно ждать. Внимательное и вдумчивое чтение Release Notes способно уберечь от множества возможных проблем.
Далее необходимо убедиться в наличии достаточного количества свободного места на жестком диске в папке /var/cache/urpmi:
Все пакеты в процессе миграции будут скачиваться этот каталог; общий объем скачиваемых пакетов зависит от количества установленного в вашей системе ПО. Обычно эта величина составляет от 4 до 7 Гб.
Если вы используете мобильный компьютер, убедитесь, что батарея заряжена, а лучше — подключите его к сети.
Обновление
Обновление системы между релизами рекомендуется делать посредством утилит командной строки. Для этого откройте терминал и открыть в нем консоль администратора системы (пользователя root). Сделать это можно или просто запустив Konsole (или ваш другой любимый эмулятор терминала) через меню KDE, либо выбрав пункт «Открыть консоль администратора/Open » в утилите «Настройка компьютера».
Первое, что нужно сделать, — удалить информацию о старых репозиториях. Делается это командой:
Затем добавляем в urpmi репозиторий того релиза, на который мы хотим обновиться (в примере приводится обновление с зеркала Yandex); также необходимо добавить репозиторий, содержащий пакет urpm-tools:
Для 32-х битных систем:
Для 64-х битных систем:
Установите пакет urpm-tools:
Прежде, чем начинать процедуру апдейта, urpm-reposync, в числе прочего, предоставит список пакетов, которые будут удалены из системы. В конце этого списка вы увидите установленные вами самостоятельно приложения, которые будут удалены из системы по причине несовместимости с новыми релизом. Свяжитесь с их поставщиком для помощи в установке.
После того, как вы согласитесь с продолжением процедуры апдейта, утилита urpm-reposync синхронизирует вашу пакетную базу с подключенными репозиториями — обновит версии пакетов, установит необходимые зависимости и так далее. Эта процедура займёт порядка двух часов.
По завершении установки пакетов нужно перезагрузить систему и, если все прошло успешно, в меню загрузчика вы увидите пункт ROSA Marathon 2012, выбрав который, вы сможете загрузиться в свою новую систему.
Тонкости работы с Urpmi
urpmi вне всяких сомнений является одним из наиболее важных инструментов ROSA. С помощью urpmi вы с лёгкостью сможете управлять пакетами. Если вы совладаете с urpmi , вы никогда не будете испытывать «ад зависимостей», на который жалуются многие неопытные пользователи. Например, простая команда urpmi sylpheed установит почтовый клиент Sylpheed, а вместе с ним и все необходимые библиотеки.
Содержание
Где получить дополнительную информацию об urpmi
Urpmi — важный инструмент для всех пользователей ROSA, и он требует какое-то время для изучения. Эта страница даёт обзор наиболее часто используемых параметров. Следующие ресурсы позволяют получить дополнительную информацию об urpmi:
Использование urpmi
Краткий список базовых функций
Вместо xxx часто можно использовать xxx.rpm, тогда операция будет проведена не над пакетом из пакетной базы, а над конкретным пакетом из текущей папки.
Команда | Что делает |
---|---|
urpmi —auto-update | выполняет обновление системы то текущего состояния репозиториев |
urpmq -i xxx | показывает информацию о пакете xxx |
urpmq -il xxx | показывает информацию о пакете xxx и список файлов, которые он устанавливает |
urpmq —changelog xxx | выводит журнал изменений пакета |
urpmq —whatrequires xxx | показывает, какие пакеты требуются пакету xxx |
urpmf /путь/к/файлу | какой пакет установил «файл» в каталог «/путь/к» |
urpmi —fuzzy —test xxx | показывает все rpm, совпадающие со строкой «xxx» |
rpm -qf /path/to/file | то же, что и urpmf, но ищет среди установленных пакетов |
urpmi.update updates | обновляет локальные данные о доступных пакетах хранилища «updates» |
urpmi.update -a | обновляет локальные данные о доступных пакетах, принадлежащих ко всем источникам |
Команда | Что делает |
urpme xxx | удаляет пакет «xxx» (и все пакеты, зависящие от этого пакета) |
urpmi —keep xxx.rpm | устанавливает пакет «xxx.rpm», содержащийся в текущем каталоге, со всеми зависимостями этого пакета, но если что-нибудь в результате установки должно быть удалено, пакет установлен не будет. |
urpmi —update —auto-select | устанавливает доступные обновления с включённых источников |
urpmi —test —keep —auto —auto-select | обновить все пакеты с включённых источников, но ничего не устанавливать и не удалять, просто сообщить, что это будет работать |
urpmi —keep —auto —auto-select | обновить все пакеты из включённых источников, но ничего не удалять, просто сообщить если что-то не работает |
urpmi —auto-select | автоматически выбрать пакеты, которые можно обновить |
Полный список опций urpmi
urpmi.addmedia
Всё начинается с добавления репозитория (или «хранилища», «зеркала»). Репозиторий можно добавить с помощью программы urpmi.addmedia .
По умолчанию, установленная ROSA Desktop Fresh уже содержит все основные репозитории. Если же вы хотите подключить дополнительный источник (например, кто-то на форуме посоветовал попробовать пакеты из его персонального репозтория на ABF), вы всегда можете сделать это вручную.
Но удобнее использовать программу с графическим интерфейсом (команда edit-urpm-sources.pl ). Эту же программу можно запустить из центра управления ROSA (раздел «Управление программами», пункт «Настройки источников настройки/обновления ПО»).
Для каждой версии ROSA имеются четыре репозитория:
- main — содержит наиболее важные программы, поддерживаемые ROSA;
- contrib — содержит дополнительные программы, добавленные участниками сообщества ROSA, но которые не обязательно должны получать обновления по безопасности;
- non-free — содержит некоторые программы, которые не являются свободными.
- restricted — содержит программы, которые могут быть запрещены к использованию в некоторых странах, где действуют патенты на программное обеспечение.
Каждый репозиторий подразделяется ещё на 3:
- release — здесь лежат пакеты в том состоянии, в котором они находились на момент выхода релиза;
- updates — здесь лежат пакеты, обновлённые со дня выхода релиза. При добавлении хранилища с обновлениями добавьте переключатель —update , чтобы urpmi мог отличить это хранилище от обычных хранилищ;
- testing — используется для тестирования свежих обновлений, что позволяет участникам, сообщающим об ошибках, проверить корректность обновлений.
Чтобы устанавливать пакеты с зеркала, urpmi необходимо предоставить один из файлов, хранящих в сжатом виде либо минимально необходимый, лиюо полный набор данных о пакетах.
Полный список опций urpmi.addmedia
Восстановление потерянных источников (cds)
Копирование CD в домашний каталог и использование копий в urpmi
Если вам не нравится жонглировать дисками при обновлении системы и у вас есть свободное место, создайте каталог (например: /home/uid/CDS/ ), скопируйте в этот каталог рекурсивно каталоги base/ и ROSA/ (т. е. вместе со всем содержимым их вложенных подкаталогов) с первого установочного CD. Затем, скопируйте все каталоги, начиная с RPMS2 вплоть до RPMS8 , со всех CD/DVD в каталог ROSA/ . После извлечения или отключения установочных CD выполните следующую команду от имени суперпользователя root:
По окончании копирования выполните следующие команды:
Затем, воспользуйтесь менеджером источников. К нему можно получить доступ из центра управления ROSA ( центр управления ROSA —> Управление программами —> Настройка источников установки/обновления ПО ). Выберите созданный вами каталог и отключите все записи, имеющие отношение к CD.
Другой метод заключается в копировании образов ISO в различные точки монтирования. Подробнее смотри копирование CD на жёсткий диск и последующее их монтирование.
Копирование rpms (включая установочные CD) в отдельный каталог. Использование копии в urpmi
Создайте каталог для хранения всех rpms, например
Чтобы скопировать сразу «кучу» rpms (с установочных CD, например):
Если вы скопировали установочные CD на жёсткий диск, или у вас есть их образы ISO на диске (о том, как монтировать образы, смотри копирование CD на жёсткий диск), это можно сделать за один шаг.
В этом примере CD монтируются как /INSTALL_CDS/CD1 , /INSTALL_CDS/CD2 и т. д.
Это приведёт к созданию файлов hdlist.cz и sythesis.hdlist.cz , которые основываются на том, что они найдут в каталоге, в котором находятся.
Найдите публичные ключи для rpms и скопируйте их в
/RPMS/pubkey . Они должны находиться в INSTALL_CDS/CD1/media/media_info :
Затем, от имени суперпользователя добавьте источник:
Добавление источника для дистрибутива
urpmi может добавить источники (т. е. main, updates, contrib . ) с выбранного зеркала с помощью одной-единственной команды. Наберите в командной строке следующую команду от имени суперпользователя:
- ‘MIRROR_SITE’ действующий URL сервера ftp;
- ‘VERSION’ версия вашей системы ROSA, для который вы хотите добавить источник
- ‘ARCH’ одна из двух архитектур: i586 или x86_64, или возможно другая, которая существует не для всех версий ROSA (например sparc, pcc и т. д.).
urpmi.update
Команда urpmi.update обновляет список пакетов репозитория. Этот список меняется всякий раз, когда на сервере меняются пакеты. Таким образом, список необходимо обновлять каждый раз, когда вы захотите установить новый пакет с репозитория, в котором возможны изменения среди пакетов, например ROSA Cooker. Если вы пользуетесь репозиторием стабильного релиза, то такой репозиторий обычно не изменяется, поэтому нет необходимости обновлять список пакетов перед установкой какого-либо пакета. Это работает примерно следующим образом:
Аргумент -a означает «все источники».
Полный список опций urpmi.update :
urpmi.removemedia
Если Вы хотите избавиться от репозитория, используйте следующую команду:
Полный список опций urpmi.removemedia :
urpmf
С помощью urpmf можно узнать, к какому пакету принадлежит тот или иной файл, а также посмотреть описание пакета и т. п.
Допустим, что вы хотите скомпилировать программу, написанную на языке программирования C, а компилятор жалуется на отсутствие файла jpeglib.h . Достаточно набрать следующую команду:
Например, вывод команды выглядит следующим образом:
Это означает, что заголовочный файл jpeglib.h является частью пакета libjpeg62-devel . Теперь, чтобы его установить, нужно набрать следующую команду:
Другой пример. Допустим, что вы хотите установить почтовый клиент, но вы не знаете ни одного почтового клиента для Linux. Вы можете выполнить поиск по описанию пакетов, используя выражения «mail» и «client». Например, команда urpmf —summary mail -a client возвратила следующее:
Параметр —summary используется для поиска по описанию. -a означает логическое «И».
Полный список опций urpmf :
urpmi
Это — главная команда программы управления пакетами, которая используется для установки пакетов вместе со всеми зависимостями:
Например, если вы считаете, что Sylpheed — достойный для установки почтовый клиент, его можно установить с помощью команды: urpmi sylpheed .
Замечание: команда urpmi имя_пакета не обязательно установит последнюю версию пакета. Urpmi сравнивает номер версии установленного пакета с номером версии пакета из включённого источника. Исключение составляет тот факт, что иногда обновление пакета доступно под немного иным названием, обе версии пакета, старая и новая, остаются доступными во включённом источнике. Это делается по причинам обратной совместимости.
Here is a notable example urpmi autoconf will not result in the latest version being installed, for the highest version of that package name is autoconf2.5-2.60.
Вместо этого следует использовать команду urpmi autoconf2.5 , которая приведёт к установке последней версии 2.5*.
Заметьте, что в вашей системе могут быть установлены 2 версии: ROSA автоматически выберет наиболее подходящую.
Для получения более подробной информации по данному примеру смотри /usr/share/doc/autoconf-2.13/IMPORTANT.README.MDK.
Ниже даётся несколько замечаний об использовании команды urpmq —fuzzy , разъясняющих, как избежать в будущем подобных проблем с версиями.
Ещё один пример использования urpmi — обновление системы с помощью последних обновлений по безопасности и баг-фиксам.
В этом примере предполагается, что у urpmi есть источник под названием «updates», который был объявлен при добавлении как «источник обновлений». Поскольку содержимое источника обновлений меняется часто, необходимо периодически проверять наличие новых обновлений с помощью urpmi.update. Символы && означают «если первая команда успешно выполнена, выполнить вторую команду». Во второй команде ключ —update означает «искать только в источниках, заявленных как обновляемые», а ключ —auto-select означает «выбрать доступные обновления для пакетов, установленных в системе». Urpmi выведет список пакетов, доступных для обновления, и спросит разрешения о продолжении своей работы.
Если добавить ключ —auto , все обновляемые пакеты будут обновлены, включая все требуемые зависимости. Если вы предпочитаете использовать графический интерфейс, воспользуйтесь программой rpmdrake из центра управления ROSA: Управление программами → Обновление системы .
urpmi —parallel
В параллельном режиме работы urpmi обновления загружаются на одну из машин, а она в свою очередь раздаёт их остальным компьютерам, входящим в локальную сеть (смотри [1]).
Команда urpmi —parallel установит обновления на всех определённых вами компьютерах. Подробнее смотри man-страницу urpmi ( man urpmi ), а также [2].
Параллельный режим urpmi работает следующим образом: вы запускаете на выполнение команду urpmi , которая выполняется параллельно на нескольких машинах. Машина, на который вы запустили команду, тестирует результат на каждой машине из группы по очереди, загружает все необходимые пакеты для всех машин группы, предоставляет соответствующие пакеты каждый машине, затем, вызывает urpmi на машине для выполнения актуальной установки. Это отличная идея для быстрой установки программ на всех ваших компьютерах, или даже для поддержания программного обеспечения на всех компьютерах в актуальном состоянии с помощью нескольких команд, кроме того, это позволяет экономно использовать полосу пропускания канала, так как каждый необходимый пакет загружается только один раз. Единственный недостаток в настоящий момент — вы не можете включить сервер в группу, что является недостатком для малых домашних локальных сетей.
Итак, как же этом пользоваться. На самом деле, всё просто. Сначала проверьте, что вы можете достучаться с сервера до каждой клиентской машины через ssh от имени суперпользователя (вы можете ввести идентификационную фразу или пароль, или можно использовать ssh-add для настройки ключей). Итак, надо установить urpmi-parallel-ssh на серверной машине, и исправить файл /etc/urpmi/parallel.cfg , он должен выглядеть примерно таким образом:
первый параметр — имя группы (оставлено на ваше усмотрение), второй параметр оставьте «ssh». Оставшиеся параметры — имя хостов машин в группе. Их может быть сколько угодно (сервер не должен входить в их список: urpmi просто откажется работать, обнаружив свои lock-файлы).
Далее, вы можете использовать этот файл. На сервере наберите команду:
До тех пор, пока urpmi на сервере будет иметь доступ ко всем пакетам, необходимым всем клиентским машинам из своих источников urpmi, всё должно работать гладко. Простейший способ гарантировать это — иметь на всех машинах (на сервере и клиентах) одни и те же источники urpmi.
Кроме того, можно постоянно поддерживать группу машин в актуальном состоянии. Например, чтобы содержать все машины обновлёнными, в домашней сети, которая включает машины zen (сервер), toy и htpc, запустите следующую последовательность команд на zen:
программа fanout запускает одну команду на нескольких машинах одновременно, используя ssh .
noclean оставляет пакеты на машине zen после установки; это значит, что когда команда parallel будет запущена в следующий раз, она не станет скачивать эти пакеты заново.
urpme
urpme — команда, предназначенная для удаления программного обеспечения с компьютера. Также как и urpmi , urpme обрабатывает зависимости и извещает пользователя, что установленное программное обеспечение зависит от того программного обеспечения, которое он собирается удалить. В таком случае, у пользователя есть возможность отменить процедуру удаления или удалить пакет вместе с другими зависящими от него пакетами. Использование:
Например, в системе установлено 2 почтовых клиента: Sylpheed и Evolution. В этом случае, если один из клиентов не используется, его можно удалить. К тому же, таким образом можно освободить немного места на жёстком диске. Чтобы удалить пакет Evolution, воспользуйтесь следующей командой:
Удаление пакет сирот
Сначала надо сформировать пакеты сироты после удаления программы:
Потом надо удали сами осиротевшие (не нужные) пакеты:
Полный список опций urpme
urpmq
urpmq позвляет Вам запрашивать базу данных rpm , благодаря чему Вы можете выяснить информацию о пакетах, установленных Вами, а так же о других вещах в базе данных, например о том, какие у Вас имеются источники установки.
Предостережение: Используя urpmq для поиска пакетов, удостоверьтесь, что понимаете разницу между использованием его с опцией —fuzzy и без нее. Вы можете не найти некоторые пакеты, которые Вы искали если не будете осторожными. Если urpmq находит пакет, название которого точно соответствует Вашему запросу, по умолчанию она выводит только название этого пакета, и Вы не увидите других пакетов, которые содержат то же название.
urpmq —fuzzy так же очень полезна, когда нужно узнать какие другие доступные версии пакета имеются: иногда новая мажорная версия не предоставляет полной обратной совместимости. По этой причине, новая версия может распространяться под немного другим именем пакета. Сейчас, Вы уверены, что не пропустите ничего.
Полный список опций urpmq :
gurpmi
gurpmi — графический фронт-энд для программы urpmi . Может использоваться из командной строки для установки и поиска пакетов. Используется программой rpmdrake для отображения сообщений о необходимости выполнения некоторых действий со стороны пользователя.
rpmdrake
Для тех же задач ROSA предлагает набор графических инструментов. Подробнее см. Rpmdrake.
smart
Пакеты smart , smart-update и smart-gui , первоначально использовавшиеся фирмой Conectiva, представляют собой инструменты, основанные на языке программирования Python. Пакеты доступны в contrib . Эти инструменты отличаются высокой скоростью работы, достаточной надёжностью, а также имеют некоторые преимущества перед оригинальными инструментами ROSA. Официально не поддерживаются. Домашняя страница: Smart Home. На данный момент доступны во многих других дистрибутивах.
Вопросы безопасности
Проблемы безопасности
Чтобы программа urpmi могла устанавливать пакеты, она должна быть запущена с привилегиями суперпользователя. Хитрый злоумышленник может обмануть пользователя, подсунув ему пакет для установки. Такие пакеты на первый взгляд выглядят как обычные пакеты, которыми регулярно пользуются множество пользователей, но в данном случае опасность заключается в том, что этот пакет может содержать программу-троян или какой-либо другой вредоносный код. Как только пакет будет установлен в системе, приложение может выпустить в систему какой-нибудь вирус, червя или даже программу-шпиона. До настоящего времени нам неизвестно о попытках использования таких эксплоитов, но в ближайшие несколько лет, когда GNU/Linux получит более широкое распространение, возможно, кто-то захочет попытаться это претворить в жизнь. К счастью, таких людей ждёт неудача, потому что внимание, уделяемое безопасности, всегда было неотъемлимой частью Linux-сообщества. Большинство пакетов имеют подпись, которая подтверждает подлинность пакета. Подробнее см. GnuPG.
Злоумышленник может попытаться внедрить вредоносную программу в пакет. Перед установкой urpmi проверит целостность пакета, используя хэш-код MD5, и включённый в пакет ключ gpg. Подробнее см. соответствующий раздел.
Иногда при работе с urpmi могут быть получены следующие строки:
Непонятно, в чём же здесь проблема: может быть файл был повреждён во время обновления, а может, процесс urpmi был принудительно завершён нетерпеливым пользователем.
Решение проблемы: удалить файл /var/lib/rpm/Pubkeys , повторно импортировать открытые ключи. См. GnuPG.
Хэширование MD5
Хэш MD5 представляет собой код, включённый в rpm-пакет. Этот код позволяет urpmi проверить хэш пакета. Если по каким-либо причинам файл был повреждён, rpm и urpmi откажутся его устанавливать.
В данном случае было получено два уведомления Invalid signature ((SHA1) DSA sha1 MD5 GPG GPG#70771ff3 NOT OK) и MD5 digest: BAD Expected(97f2ba5a91888cd3af40f89be6b65868) != (393221db35071aa90eaa73816a9a5ba8). Файл kdesdk-3.1.3-9mdk.i586.rpm повреждён и установлен не будет.
Решение: удалить файл из /var/cache/urpmi/rpms/ и скачать его заново. Попытаться ещё раз установить его с помощью urpmi или rpm —import
Если это не помогло, значит используемое зеркало содержит повреждённый файл. Попытайтесь скачать файл вручную с двух-трёх других зеркал и сохранить его в каталоге /var/cache/urpmi/rpms/ . Всегда удаляйте вручную предыдущий скачанный файл перед последующей попыткой использования другого зеркала. Затем, установите его снова с помощью urpmi .
Если после нескольких попыток будет возникать одна и та же проблема, возможно, что повреждённый файл попал на каждый ftp-сервер. Обратитесь в форум или список рассылки, возможно, что другие пользователи также столкнулись с этой проблемой. В таком случае, скорее всего новый файл появится в ближайшее время.
Решение проблем
База данных RPM заблокирована
От имени суперпользователя можно ввести:
Если это не разблокирует базу, можно перезагрузить систему.
С другой стороны, такое использование программы killall повышает риск повреждения базы данных RPM, так как вы не позволяете программам, работающим с базой, завершить свою работу. Поэтому будьте осторожны, используя данный приём.
Пересборка базы данных
Может статься, что база rpm-пакетов поломалась. В таком случае, вы можете получить сообщение, что не установленный пакет уже установлен или наоборот. Чтобы исправить, воспользуйтесь командами:
rm -rf /var/lib/rpm/__db *
rpm —rebuilddb
* Неплохой идеей может быть периодической резервное копирование директории /var/lib/rpm . В этом случае вы всегда сможете вернуть предыдущую рабочую версию такими командами:
rpm -ivh —justdb —noscripts —notriggers
Ошибка «medium contrib uses an invalid list»
Эта команда устранит ошибку, не влияя на установку пакетов.
RPM package verification
Очень полезным при проверке сломавшейся системы может оказаться проверка установленных пакетов на соответствие базе данных пакетов.
Эта команда сообщит вам, какие пакеты изменились с момента установки. Она покажет все несоответствия установленных в системе файлов тому, что должно быть, согласно базе urpmi. При непредвиденном отключении питания, зависании системы и других форс-мажорных обстоятельствах (и человеческом факторе) некоторые файлы могут повредиться или исчезнуть. Узнав, какие пакеты повреждены, вы можете переустановить их и исправить работу системы. Таким образом можно восстановить работоспособность даже незагружающейся системы, войдя в неё при помощи какого-нибудь Live-CD. Для переустановки пакетов используйте команду
Для проверки одного пакета используйте команду rpm -V имя_пакета (достаточно только имени пакета).
Для проверки контрольной суммы пакета (md5sum), хэша и цифровой подписи gpg:
Обновление до последней версии Росы с помощью urpmi
Urpmi также может быть использован для обновления вышей машины до более новой версии Росы. Для этого необходимо добавить репозитории с новыми пакетами и запустить urpmi —auto-update .
Другие возможности urpmi
Установка пакета из сети и из локального файла
urpmi может быть использован для установки локальных файлов rpm с разрешением всех зависимостей. Например, если вы собрали новую версию пакета foo-1.0-1bar.rpm , вы можете его установить в систему с помощью urpmi foo-1.0-1bar.rpm . Более того, в качестве аргумента можно задать ссылку на http или ftp сервер (и даже ssh, при условии, что и на сервере, и на клиенте установлен rsync).
Получение списка зависимостей перед установкой
С помощью urpmq вы можете получить детальную информацию о зависимостях пакетов rpm.
- urpmq -d выведет список всех пакетов, которые необходимы для установки заданного rpm.
- используйте опцию -m для вывода только тех пакетов, которые еще не установлены в системе.
- —sources выведет ссылки, с которых будут скачаны необходимые пакеты.
Таким образом, команда urpmq -d -m —sources выведет вам список ссылок на пакеты, которые необходимо доустановить в систему. Такой список полезен, если у вас плохое соединение с Интернет и вы хотите скачать пакеты где-то в другом месте.
Получение информации о пакетах
С помощью urpmq -i вы можете получить детальную информацию о пакете из репозитория. Попробуйте urpmq -i bash .
Установка ПО не в формате RPM
По возможности, для установки ПО вы должны использовать RPM-пакеты из репозиториев ROSA. Мы уверены, что наши репозитории содержат все необходимое для большинства пользователей. Тем не менее, иногда возникает необходимость поставить программу, отсутствующую в репозитории.
Старайтесь не устанавливать ПО в обход базы данных RPM. Также не устанавливайте пакеты при помощи rpm —nodeps ; мы не можем гарантировать, что установленное таким образом ПО будет корректно функционировать и не сломает систему.
Компилирование исходных кодов
Вместо уже знакомой тройки команд:
После этого вы получите пакет, который можно установить с помощью urpmi , а потом удалить с помощью этой же программы. Исходный код некоторых приложений уже содержит spec-файл, и вы можете попробовать его использовать для сборки RPM-пакета:
rpmbuild -tb ballname.tar.gz
Установка двоичных пакетов
Такие программы должны находиться в каталоге /usr/local . Этот каталог предназначен для хранения неофициальных пакетов.
Проприетарные драйвера
Все проприетарные драйвера находятся в хранилище non-free .
Пересборка RPMS
Если у вас есть rpm-пакет, собранный для системы, отличающей от вашей, его можно пересобрать. Подробнее см. сборка пакетов.
Копирование CD/DVD на жёсткий диск и их последующее монтирование
Если вам не нравится постоянно менять носители в приводе, вы можете сохранить образы носителей на жёстком диске, настроив urpmi на использование образов носителей вместо физических носителей.
Сначала, создайте каталог для образов ISO носителей:
Скопируйте все носители в соответствующие каталоги:
От имени суперпользователя создайте точки монтирования для каждого носителя:
Записки IT специалиста
ROSA Fresh Desktop 12 — если честно, то уже и не ждали.
- Автор: Уваров А.С.
- 09.11.2021
В середине октября достаточно неожиданно вышел очередной релиз отечественной операционной системы ROSA на базе платформы 2021.1. Это домашняя версия Fresh, которая может использоваться свободно без ограничений и предназначена в первую очередь для тестирования. Событие достаточно значимое, прошлый выпуск ROSA 11 базировался на платформе 2016.1, выпущенной более пяти лет назад, после чего никакими осязаемыми результатами разработчики порадовать нас не могли. Давайте же посмотрим к чему пришла ROSA за столь длительный срок.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Напомним, что ROSA является российским дистрибутивом, основанным на Mandriva Linux, причем дистрибутивом самостоятельным, который использует собственную пакетную базу и имеет собственную среду разработки и сборки. Предыдущую версию вместе с краткой историей происхождения мы рассматривали в обзоре предыдущей платформы.
Для тех, кто не читал, коротко расскажем: популярный в свое время дистрибутив Mandrake Linux, позже Mandriva изначально разрабатывался коммерческой компанией, которая так и не смогла найти работающую бизнес-модель и в начале 2010-х вплотную подошла к банкротству. Состав владельцев компании менялся и в него вошел фонд NGI, с российскими владельцами. Примерно в это же время Mandriva была взята за основу российского дистрибутива ROSA, а в 2010, после увольнения сотрудников французского подразделения они создали собственный форк системы — Mageia.
На этом пути разных ветвей дистрибутива разошлись, после ликвидации компании-владельца дистрибутива вся разработка Mandriva была выведена в Россию и таким образом ROSA получила полностью самостоятельную платформу с собственной средой разработки и сборки. Задел хороший, из российских дистрибутивов этим может похвастаться только Альт, все остальные используют пакетную базу более крупных систем: Debian или RHEL.
Но с наследством можно поступить по-разному: можно приумножить, а можно и спустить. Но не будем забегать вперед. Первые версии ROSA выглядели действительно неплохо, полностью оправдывая название дистрибутива Fresh — свежий. Одновременно с ними были представлены и коммерческие версии — ROSA Enterprise Desktop (RED), который отличались от Fresh только наличием поддержки и большей стабильностью, основываясь на более старых версиях платформы. Т.е. сложилась уже вполне классическая схема, когда обычным пользователям дают более свежий дистрибутив, одновременно тестируя в нем новые технологии, которые затем переходят в коммерческую версию. Наиболее яркий пример — RHEL и Fedora.
Но потом что-то пошло не так. Нет, внешне все выглядело более-менее прилично, так Desktop Fresh R11 вышел весной 2019 года, через год был выпущен R11.1, но в основе этих дистрибутивов продолжала лежать платформа 2016.1. Налицо потеря темпов развития дистрибутива, плюс не очень хороший информационный фон, который начал складываться вокруг разработчиков. Достаточно широкое освещение в сети получила весьма некрасивая история с драйверами NVMe, которые были включены в состав дистрибутива, но при этом не были выполнены предварительные договоренности с разработчиком.
Но теперь, вроде-бы, дождались, официально представлена новая ROSA Fresh Desktop 12 на базе платформы 2021.1, предназначенная пока для тестирования, коммерческие дистрибутивы на ее базе обещают представить позднее. Ну что же, давайте посмотрим.
Установочный дистрибутив загружается в режиме LiveCD, что дает возможность проверить совместимость с железом еще до установки, это положительный момент, но нас более интересует установленная система. И вот первая неожиданность: вместо оригинального, минималистичного и отлично оформленного фирменного инсталлятора нас встречает Anaconda — стандартный установщик RHEL-based систем.
Нет, Anaconda ничем не плоха, но разработчики не постарались даже минимально внести какой-то фирменный стиль, хотя все возможности к этому имеются. Такая потеря собственной идентичности уже тревожный сигнал.
Интерфейс входа в систему реализован на GDM и также потерял собственную индивидуальность, теперь всё как у всех.
Внутри нас ожидает KDE Plasma 5 с минимальным собственным оформлением, от ROSA остались, пожалуй, только значки, остальное — самый обычный KDE. Про то, что в системе слишком много KDE и мало индивидуальности мы писали в предыдущем обзоре, но все-таки в R11 было много ярких и самобытных элементов: экран входа, меню, значки. Теперь KDE стало еще больше, а индивидуальных черт еще меньше, что абсолютно не радует.
Набор программ в целом стандартный, версии ПО достаточно свежие, никаких проблем здесь не возникает.
А вот дальше лезут недоработки, причем очень грубые. Так при переключении на темную тему мы получаем весьма и весьма неожиданный результат. Причем это не стороннее ПО, а установленное в системе по умолчанию.
Нет, возможно найдутся ценители абстрактного искусства, кому такой вариант придется по душе, но большинство пользователей просто хотят работать с комфортом. Причем далеко ходить за этим не нужно — и LibreOffice и Gimp имеют в своем составе прекрасные темные темы, легким движением руки показанное выше непотребство превращается в довольно элегантную систему.
Создается впечатление, что дистрибутив готовили или в спешке, или в условиях сильной ограниченности в ресурсах. Но изменения «под капотом» не менее интересны, приведем несколько цитат с официального сайта, начнем с общего описания изменений:
Осуществлен переход с пакетных менеджеров RPM 5 и urpmi на RPM 4 и dnf, что позволило сделать работу пакетной системы гораздо стабильнее и предсказуемее
Улучшена совместимость с RPM-пакетами для дистрибутивов RHEL, CentOS, Fedora, SUSE: добавлены провайды в некоторые отличающиеся по именам пакетам, пакетный менеджер совместим с ними по формате метаданных репозиториев
С одной стороны, все довольно логично — внедряем лучшее и перспективное. Но фактически разработчики одна за другой сдают позиции собственной платформы Mandriva в пользу стандартного RHEL-based.
Если копнуть несколько глубже, то вырисовываются вовсе неприглядные вещи:
ни RPM 5, ни urpmi более не разрабатываются, ROSA и PLD остались единственными их использующими дистрибутивами, причем PLD уже более года прорабатывает переход на rpm4; в мире Linux нецелесообразно пытаться малыми силами тащить такую важную инфраструктурную вещь, как пакетная система
urpmi, конечно, немного жалко, но желающих в одиночку тянуть urpmi и perl-URPM не нашлось, а какого-либо критически важного функционала, отсутствующего в DNF, в urpmi нет
За этими, на первый взгляд, обоснованными словами кроется неспособность разработчиков ROSA поддерживать и развивать собственную платформу, хотя все возможности к этому были и остаются. А также явно прослеживается желание уйти на «все готовое» в лице RHEL-based.
либо отвязать drakxtools от perl-URPM (или перейти на manatools, как минимум настройку часов оттуда точно нужно взять, т.к. она умеет не только в ntpd, а еще и в chrony и systemd-timesyncd, а это важно), либо придется оставить urpmi в качестве существующего параллельно с DNF пакетного менеджера, как в Mageia
если будет решено оставить urpmi и perl-URPM, то, во-первых, взять их версии из Mageia (они умеют работать c rpm4), во-вторых, перенести /usr/
А вот это, на наш взгляд, полный финиш. Смысл этих строк до безобразия прост — разработчики расписались в полном бессилии по поддержке, принадлежащей им платформы, мало того, они не знают, что делать с собственной системой, так еще и предлагают заимствовать пакеты из форка Mandriva пути с которым разошлись более 10 лет назад. Еще раз: производитель коммерческих систем ROSA заимствует технологии у развиваемой сообществом Mageia.
Если снова вспомнить R11, то дистрибутив включал в себя неплохие программы собственной разработки: медиа-плеер, программу заморозки состояния системы, средство создания загрузочных флешек. Что осталось от этого сейчас? Да ничего, кроме ROSA ImageWriter, а это еще один очень неприятный звоночек. Дистрибутив становится все более похож на очередной клон RHEL с нескучными обоями, а они тут есть, вашему вниманию представляем графическую работу «Алтай».
Нет, не подумайте ничего плохого, а данная работа нам очень понравилась, но, согласитесь, это не то, чего ожидаешь от платформы после пятилетней паузы.
А что же осталось от Mandriva? Немного, на смену устаревшему Rpmdrake пришел не менее морально устаревший dnfdragora, в современную эпоху магазинов все это выглядит архаично и требует от пользователя достаточно специфичных знаний о пакетах. Но компьютер сегодня — это не удел профессионалов, пользователь должен включить его в розетку и работать, не вникая в подробности внутреннего устройства.
Также остались некоторые инструменты настройки системы, такие как брандмауэр, родительский контроль и т.д., но выглядят они в среде Plasma чужеродно и это сразу бросается в глаза, поэтому снова появляется нехорошее предчувствие, что их развитием никто заниматься не собирается и присутствуют они тут только «по инерции».
Хотя инструменты, между прочим, хорошие. Именно благодаря им Mandrake сумел выделиться на фоне массы других дистрибутивов и стать первым Linux с человеческим лицом.
В остальном же это вполне современный дистрибутив, достаточно простой и удобный в обращении. Так в сетевых возможностях добавили поддержку всего, что нужно и что не нужно, мы теряемся в догадках кому на практике может пригодиться DNS-туннель iodine.
Мультимедийные возможности также на высоте, мы без проблем посмотрели ролики в разрешении 4K без какой-либо фатальной нагрузки на систему.
И сказать чего-либо плохого о новой ROSA нельзя, система соответствует всем современным требованиям. Но есть и другие критерии, о них поговорим ниже.
Выводы
Если судить внешне, то ROSA Fresh Desktop 12 неплоха и многим пользователям она должна понравиться. Но если копать глубже, то новый выпуск фактически подтвердил неспособность разработчиков поддерживать и развивать собственную платформу. Их мотивация на первый взгляд понятна, мол к чему тратить силы на что-то свое, когда можно взять другое, широко используемое. Но ведь тот же Альт может и делает, именно свое, сегодня Сизиф самый крупный отечественный репозиторий.
ROSA, получив в наследство весьма популярную не только в России, но и во всем мире платформу так и не смогла повернуть это к своей пользе. Хотя возможности были: Mandriva — одна из немногих самостоятельных платформ со сложившимся сообществом пользователей и имеющая перспективы развития. Но увы, сегодня ни о каком развитии речи не идет, наоборот, на полном серьезе обсуждаются заимствования из Mageia и переход на пакетную базу RHEL.
Но все становится на свои места, если посмотреть на ситуацию с другой стороны. Развитие собственной платформы требует определенных затрат и инвестиций здесь и сейчас, это стратегический вложения и выгода от них проявится только в долгосрочной перспективе. В тоже время есть достаточно горячий рынок импортозамещения, где можно сделать деньги прямо сегодня, так для чего вкладываться в непонятные перспективы? Надо ковать железо, не отходя от кассы.
Если смотреть с этой стороны, то все логично: зачем лишние расходы, если можно взять обычный RHEL-based, немного допилить и продать по линии импортозамещения.
Поэтому, как ни грустно это признавать, ROSA как последователь Mandriva фактически закончился, если вы хотите приобщиться к этому дистрибутиву, то осталась только Mageia. ROSA же сегодня стремительно трансформируется в еще один Linuх для импортозамещения, хотя начиналось все вполне неплохо и обнадеживающе.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
ROSA Updates Builder — автоматическое обновление пакетов из апстрима (Денис Силаков, OSSDEVCONF-2013)
Разработчики многих современных дистрибутивов стремятся предоставить пользователям как можно более широкий выбор ПО и собирают для своих систем тысячи пакетов с различными программными компонентами. Но мало собрать пакет с той или иной программой: необходимо поддерживать его в актуальном состоянии — в частности, вовремя обновляться на новые версии из апстрима.
Помноженное на частые релизы в апстриме, большое количество пакетов в дистрибутиве делает эту задачу достаточно ресурсоемкой. Однако процесс обновления пакета во многих случаях тривиален и сводится к замене архива с исходным кодом. Поэтому представляется разумным автоматизиро- вать задачу мониторинга выхода новых версий в апстриме и их сборки в дистрибутив. Данный доклад посвящен инструменту Updates Builder, используемому для этих целей в РОСЕ.
Видео
Посмотрели доклад? Понравился? Напишите комментарий! Не согласны? Тем более напишите.
Слайды
Количество пакетов в современном дистрибутиве общего назначения исчисляется тысячами. Но далеко не все из них монстры наподобие LibreOffice, сборка и обновление которых может потребовать серьезных усилий. Большинство пакетов — это небольшие программы, библиотеки, модули интерпретируемых языков и прочие компоненты, которые собираются в дистрибутив с минимумом патчей, буквально парой инструкций.
Например, ROSA Desktop Fresh R1 содержит около 1,500 пакетов с модулями texlive, более 2,000 модулей Perl, сотни дополнительных пакетов для R и так далее.
Минорные обновления многих подобных компонентов выходят достаточно часто. Как правило, обновление пакета при этом сводится к упаковке новой версии и базовой проверке того, что обновленный пакет устанавливается и им можно пользоваться. В случае одного пакета это недолго — скачать и запаковать новую версию можно за пять минут.
Однако на тысячу пакетов уйдет несколько рабочих дней. При этом простая перепаковка новых версий — занятие нудное и рутинное, и тратить на него силы людей не представляется рациональным.
К тому же появление новых версий в апстриме надо своевременно отслеживать, и делать это вручную — тоже не очень разумно.
Для облегчения жизни мэйнтейнеров, использующих среду сборки ABF (в настоящее время — прежде всего разработчиков ROSA и OpenMandriva), мы разработали автоматический cервис отслеживания и сборки новых версий ПО. Сервис состоит из двух компонентов — инструмента мониторинга апстрим-версий и инструмента автоматической сборки этих версий на ABF.
В роли первого инструмента выступает Upstream Tracker, который в настоящее время также развивается РОСОЙ. Для целей сервиса используется его часть, отслеживающая актуальность версий пакетов в РОСЕ и OpenMandriva — Updates Tracker, который осуществляет мониторинг апстрима и всегда располагает сведениями о свежих версиях ПО.
Второй инструмент — это утилита Updates Builder, берущая на вход имя пакета, запрашивающая Upstream Tracker на предмет наличия новой версии в апстриме и в случае наличия таковой, пытающаяся ее собрать на ABF. Перед сборкой в Git-репозитории соответствующего проекта на ABF создается отдельная ветка, с которой и работает Updates Builder.
В spec-файле в этой ветке обновляются версия пакета и версия архива с исходным кодом и сбрасывается релиз. Новый архив с исходным кодом помещается в файловое хранилище ABF (в отличие от многих систем сборки, ABF хранит бинарные файлы на отдельном файловом сервере, а в Git помещается только ссылка на нужный файл).
На основе данных из созданной ветки Git осуществляется попытка собрать обновленный пакет. Сборка производится в отдельный контейнер, без публикации пакета в какой-либо репозиторий. Мэйнтейнеру пакета отсылается уже письмо о результатах сборки. В случае успеха он может сразу переходить к проверке функциональности обновленной программы, и если его все устраивает, то перенести новую версию из вспомогательной ветки Git в ветку, соответствующую целевому репозиторию. В дополнение к этому, в случае успешной сборки Updates Builder автоматически формирует Pull Request на перенос обновлений в основную ветку Git — так что мэйнтейнеры могут быстро просмотреть предлагаемые изменения и согласиться с ними нажатием одной кнопки.
Updates Builder уже более полугода успешно используется в РОСЕ и OpenMandriva для отслеживания обновлений нескольких тысяч пакетов. Практика его использования показывает, что один человек вполне в состоянии обрабатывать до нескольких десятков пакетов за неделю, не сильно отвлекаясь от других занятий. Это позволяет повысить эффективность участия в поддержке дистрибутива людей, которые могут выделить на такое участие достаточно ограниченное количество времени.
Одним из опасений, высказываемых в отношении подобного сервиса, является соблазн полностью переложить процесс обновления пакетов на роботов, что может негативно сказаться на качестве системы — ведь ошибки будут выявляться уже после помещения пакетов в репозитории.
В РОСЕ с такой проблемой борются регламентными мерами — обновления пакетов в main-репозиторий уже выпущенных релизов, а также разрабатываемых релизов на стадии бета-тестирования, обя- заны проходить через команду QA. И в интересах мэйнтейнера перед отправкой обновления на проверку удостовериться в его корректности.
Кроме того, полностью автоматическое обновление с использованием Updates Builder возможно только в случае относительно небольших изменений, которые вряд ли нарушат совместимость с предыдущей версией. В случае серьезных изменений (например, нового soname у библиотеки), мэйнтейнерам все равно придется вмешаться. И в таких случаях все зависит от их добросовестности — ограничатся ли они простым изменением soname в spec-файле или честно изучат проблемы, которые может такое изменение привнести. В конце концов, сервис избавляет их от изрядной доли рутинной работы — так почему бы не потратить освободившееся время на более тщательную проверку новых версий?
Как обновить rosa linux до последней версии
Zip File, мои маленькие любители линухи и всего, что так или иначе связано с безопасностью. В одном из прошлых уроков мы устанавливали операционную систему от отечественных разработчиков Astra Linux. Нынче мы займёмся её обновлением. Процесс этот, честно говоря, не простой. Ведь в отличие от своих собратьев по цеху, данная ОС настолько помешана на своей защищённости, что классический вариант с внешним репозиторием здесь попросту не предусмотрен. По крайней мере пока.
В качестве альтернативы создатели предлагают нам самостоятельно отслеживать, а затем скачивать с их ресурса образы с обновлениями, без лишней скромности именуемые «Бюллетени безопасности». В данном уроке я расскажу, каким образом вы можете загрузить данные бюллетени и самостоятельно обновить вашу Астру. Приступим.
Шаг 1. На официальном ресурсе astralinux.ru переходим на вкладку «Бюллетени безопасности» и выбираем нужную версию ОС. Я буду демонстрировать всё на примереверсии 1.6.
Шаг 2. Выбираем последний Бюллетень. На сегодняшний день это Update 4 версии. У вас он вероятно будет чутка новее.
Шаг 3. Видим, что данная версия включает в себя все предыдущие обновления. Чуть ниже есть пункт «Загрузить образ диска». То, что нужно. Жмём «Скачать», а затем «Сохранить файл».
Шаг 4. Дождавшись загрузки открываем «Терминал Fly». Он находится в разделе с системными утилитами.
Шаг 5. Вводим команду «cd Загрузки», чтоб перейти в каталог куда загрузился наш образ.
Шаг 6. Давайте проверим, точно ли образ присутствует здесь. «ls». Да, вот он ISO’шник.
Шаг 7. Далее нам нужно скопировать его в папку mnt. Данный каталог является временной точкой монтирования для всех образов. Пишем sudo. Все последующие команду будем выполнять с правами ROOT’а, CP, полное наименование образа, расширение и затем нужный каталог.
Шаг 8. Дожидаемся пока образ копирнётся, а затем монтируем его в качестве CD-диска в привод. sudo mount /mnt/20191029SE16.iso /media/cdrom
Шаг 9. Отличненько. Далее регистрируем диск в системе. sudo apt-cdrom -m add
Шаг 10. И вводим имя. Я укажу точно такое же, как и название образа.
Шаг 11. Тут всё. Можно пока отмонтировать раздел. Подключим по мере необходимости. sudo umount /media/cdrom
Шаг 12. Далее вводим команду sudo -s. Чтобы все последующие действия выполнялись с правами Root’а по умолчанию.
Шаг 13. Обновляем список пакетов.
Шаг 14. И приступаем к установке набрав apt dist-upgrade
Шаг 15. Соглашаемся с тем, что размер диска после обнов слегка уменьшится.
Шаг 16. И при появлении сообщения с просьбой вставить диск, открываем второе окно терминала. Самое время вернуть отмонтированный диск на место. Вводим sudo mount /mnt/20191029SE16.iso /media/cdrom, подтверждаем это дело, и вернувшись в основное окно жмём Enter.
Шаг 17. Установка продолжилась. Ждём, когда процесс завершится. Такc. Видим, что есть одна небольшая ошибка. Исправим зависимости. Вводим apt -f install
Шаг 18. Система просит вставить оригинальный диск с астрой. Нет проблем. Подключаем его и двигаемся дальше.
Шаг 19. После завершения обновлений закрываем все окна Fly терминала и перезагружаем нашу машинку.
Шаг 20. Не забудьте отключить установочный диск. А то при старте запустится процесс установки ОС.
Шаг 21. После успешной загрузки нам остаётся лишь удалить файлы-образы. Из загрузок это можно сделать через контекстное меню. Ничего сложного.
Шаг 22. А вот из MNT так просто не убрать. Открываем терминал. Переходим в соответствующий каталог и вводим команду sudo rm и полное наименование образа.
Вот теперь точно всё. Система Astra Lunux обновлена. Можно расслабиться.
Друзья, все команды я как обычно оставлю в описании к этому видео. Если вы хотите научиться работать не только с клиентскими операционными системами Linux, но и администрировать серверные решения, то обязательно ознакомьтесь с нашим обучающим курсом Linuxс нуля. В данный момент на него действует 50% скидка. Ссылочка со всеми подробностями также в описании.
>>>КЛИКНИТЕ, ЧТОБЫ УЗНАТЬ ПОДРОБНОСТИ<<<
На этом сегодня всё. Удачи, успехов ребятки. Берегите себя и свои сервера. Не пренебрегайте обновлениями и помните, ничто не вечно под виндой. Карантин 2020 — лучшее время, чтобы изучить линуху и вернуться на рынок труда с новыми, реально востребованными знаниями. До новых встреч. Всем пока.