LXF90 RPM
| Підписка на друковану версію Весь 2015 рік (12 номерів) Перше півріччя (6 номерів) Друге півріччя (6 номерів) | Передплата електронної версії Весь 2015 рік (12 номерів) Перше півріччя (6 номерів) Друге півріччя (6 номерів) | Підшивки старих номерів журналу (друковані версії) Весь 2014 рік (12 номерів) Перше півріччя (6 номерів) Друге півріччя (6 номерів) |
RPM: Пакети
Завдяки RPM, управління пакетами в Fedora Core, SUSE і Mandriva відбувається напрочуд легко. Прогуляємося зЕнді Ченнеломпо процесу оновлення та встановлення.
Зміст
- ПакетДвійковий файл, що містить програму. Пакети доступні в різних форматах, включаючи APT і RPM (тому я кажу «RPM-пакет»).
- Менеджер пакетівПрограма, яка керує встановленням, оновленням та видаленням пакетів.
- ЗалежностямиЧастини програмного забезпечення, які потрібні іншим частинам програмного забезпечення, перш ніж останні можуть бути встановлені.
- ОновленняНова версія програми. Сюди можуть входити нові функції або вирішення питань безпеки або виправлення помилок.
- Двійкові файлиПрограмне забезпечення в Linux часто поставляється як у вигляді вихідних текстів, так і в двійковій формі. Двійкова програма вже готова до встановлення, а вихідні тексти необхідно компілювати.
- РепозиторійБаза даних за програмами в мережі (або на дисках), до якої може звертатися ваш дистрибутив.
Більшість користувачів та розробників Linux погодяться, що визначальна властивість операційної системи – наявність вибору. Так, у нас є два (навіть більше) робочих столи, два завантажувачі та дві домінуючі системи управління пакетами: APTта RPM.
А ось визначальна риса користувачів та розробників Linux – палкість, і якщо ви оголосите, що «APT найкраще», вас негайно атакують. Однак донедавна сперечатися з цим було важко. Минулого уроку ми переконалися, що прийшла з Debian Advanced Package Tool (APT) чудова, і раніше користувачі дистрибутивів на основі Red Hat Package Manager (RPM) могли лише заздрити своїм друзям з APT, які запросто ставлять нові програми.
Подібна ситуація не могла тривати довго; так і сталося. Сьогодні RPM пропонує безліч функцій, що дозволяють їй на рівні змагатися з APT. На цьому уроці я покажу, як дистрибутиви на основі RPM можуть автоматично шукати оновлення пакетів і як використовувати RPM для встановлення та видалення програм. Ви зможете переглядати нові програми і миттю дозволяти залежності.
Що таке дистрибутив на основі RPM? RPM - це технологія, яка вступила в життя як частина дистрибутива Red Hat Linux. Вона також знайшла своє застосування в інших заснованих на Red Hat дистрибутивах, включаючи Fedora Core, Mandriva та SUSE. Тобто три найпопулярніші дистрибутиви Linux мають однакову систему управління пакетами. Втім, RPM-пакети зазвичай свої для кожного дистрибутива та версії програми, тому буде нерозумно встановити Fedora RPM на систему Mandriva, і не рекомендується ставити SUSE 9.3 RPM на дистрибутив SUSE 10.2.
Оновлюємо дистрибутив
Як і в статті про APT в LXF89, ми почнемо з розгляду автоматичних засобів, що підтримують ваше програмне забезпечення в актуальному стані, а потім займемося управлінням пакетами через командний рядок. Хоча друга частина може здатися примхою, і до того ж негуманною для Перших кроків, це ідеальний спосіб розібратися з RPM: більшість програм управління пакетами у складідистрибутивів на основі RPM – це просто графічні надбудови над командами. Знаючи ці команди, набагато легше зрозуміти процес встановлення програм за допомогою RPMDrake у Mandriva, Yast у SUSE або Package Manager у Fedora.
Цей урок базується на Mandriva Linux 2007, оскільки цей дистрибутив популярний серед новачків Linux, але більшу частину описаних процедур легко адаптувати і до двох інших RPM-дистрибутивів.
За замовчуванням цей процес запуститься автоматично при завантаженні системи, але дехто (наприклад, ті самі користувачі модемів) не захоче, щоб його комп'ютер щоразу підключався до мережі. Якщо ви один із них, то автоматичний запуск легко вимкнути. Клацніть правою кнопкою миші на іконці автоматичного оновлення в системному лотку та зніміть галочку з опції Always Launch On Startup [Завжди запускати під час завантаження]. Також можна вручну перевірити оновлення, вибравши Check Updates [Перевірити Оновлення]: це стане потрібним і користувачам з високошвидкісним доступом, якщо вони ніколи не вимикають свій комп'ютер.
Ось так отримують автоматичні поновлення під Mandriva. Користувачі Fedora можуть інсталювати автоматичні оновлення через командний рядок. Відкрийте термінал, наберітьsu, натисніть Enter, введіть пароль root, потім наберітьchkconfig yum on. Процедура для SUSE майже та сама, що й у Mandriva, відрізняється лише ім'я менеджера (Yast Online Update).
Прості команди
Тепер відкрийте термінал (пам'ятайте, що він може називатисяConsoleу Gnome абоKonsoleу KDE і ховається десь у меню Система) і наберітьsu, щоб отримати привілеї root. Швидше за все доведеться змінити каталог, так якFirefoxта інші web-браузери завантажують файли на робочий стіл, а термінал майже завждивідкривається в каталозі/home/ім'я_користувача. Каталог легко змінити:
Тепер ми саме там, звідки треба розпочинати встановлення. Ви помітите, що будь-яке ім'я файлу RPM складається з імені програми (FreeMind у моєму випадку), номера версії (0.8.0), номера релізу (6) і розширення .RPM. Може бути увімкнено ім'я дистрибутива та/або версія, для якої призначений пакет, а також архітектура, наприклад, i386, PowerPC або ARM. Програми, які не прив'язані до певної архітектури (як FreeMind у моєму прикладі), містять рядок 'noarch' в імені файлу.
Нарешті, ми можемо використовувати просту RPM-команду, щоб встановити наш додаток:
Якщо ви хочете оновити існуючий додаток на вашій системі, а не встановити новий, тоiу команді треба замінити наU.
Підтримка програмного забезпечення
На жаль, спробувавши встановитиFreeMindна Mandriva Free 2007 (безкоштовна версія), ви напевно натрапите на масу незадоволених залежностей.
Якщо вам з ними не впоратися, спробуйтеUrmpi. Це інструмент командного рядка, який звертається до репозиторій програм для вирішення залежностей при спробах інсталяції програм.Urmpiне має проблем із залежностями, як RPM, оскільки сам ставить необхідні пакети, проте хтось має подбати про створення пакета та помістити його в репозиторій.
Щоб встановити програму за допомогоюUrmpi, почніть так:
Номер версії вам не потрібний, оскільки програма встановиться з останньою версією.
До Mandriva вже додається ряд встановленихUrmpi-репозиторіїв: це CD або DVD, на яких поставляється дистрибутив, а також будь-яке джерело оновлень, налаштоване при початковій установці дистрибутива. Але можнадодати й інші репозиторії, якщо у встановлених потрібного додатка немає - а для пошуку потрібного репозиторію є чудовий сайт. Щоб знайти та додати новий репозиторій, зайдіть на http://easyurmpi.zrb.orf, введіть номер версії Mandriva, архітектуру та менеджер пакетів, та дотримуйтесь підказок. На останньому етапі з'явиться список команд, які необхідно набрати (їх можна скопіювати та вставити) у командному рядку від імені root. Залежно від кількості доданих джерел та швидкості вашого інтернет-з'єднання ця процедура може тривати від кількох хвилин до півгодини. Наприклад, додавання джерелаPenguin Liberation Front(він надає безліч невільних додатків, особливо корисних для програвання мультимедіа) на мій комп'ютер вимагало завантажити 50 МБ. Код, що генеруєтьсяEasyUrmpi, має наступний формат:
Він містить команду (urmpi.addmedia), що супроводжується описом репозиторію та вказівкою на розташування репозиторію та списку пакетів (частинаhdlist.gz). Тому, наприклад, додавши всі пропонованіEasyUrmpiджерела, ви зможете набрати в консоліurmpi flashplayer-pluginі встановити плеєр від Adobe доFirefox, не замислюючись про XPI, tar.gz та інших файлах.
УURPMiє корисні команди, що дозволяють з'ясувати, чи міститься додаток у ваших репозиторіях. Це:urmpq ім'я_додатку, вона здійснює простий пошук;urmpq -iздійснить пошук та відобразить інформацію про кожен знайдений пакет; іurmpq --fuzzy, що відображає список програм, що нагадують те, що ви шукаєте – наприклад, пошук 'Firefox' видасть усі пакети, в яких згадується це слово.
Нарешті, за допомогоюUrmpiможна оновити всі програми на вашій системі -як ми вже робили автоматично – до останніх версій. Команда для цього буде такою:
Якщо потрібно видалити програмне забезпечення з вашої системи, згодиться старий добрий RPM. Не обов'язково пам'ятати всі деталі (наприклад, номер версії) пакета, що видаляється. Командаrpm -e ім'я_додаткуподбає про все.
Графічна краса
Я хотів показати вам, як користуватися командним рядком, тому що хоч дистрибутиви можуть мати свої власні графічні інструменти для управління програмним забезпеченням, всі вони засновані на тих же командах RPM-системи. Тому, оволодівши RPM з командного рядка Mandriva, ви зможете давати поради своїм друзям з іншими дистрибутивами, і виглядати елітним Linux-хакером. А зараз розглянемо альтернативуUrmpiта терміналу: скачаємо пакети за допомогою графічного інструменту Mandriva.
Спочатку виберемо у стартовому меню System [Система] > Configuration [Налаштування] > Packaging [Пакети] > Install, Remove And Update Software [Встановити, Видалити та Оновити програми]. З'явиться нове вікно (точніше частина Центру Управління Mandriva Control Center), що містить чотири опції. Якщо ви виберете четверту - під назвою Select From Where Software Packages Are Downloaded When Updating The System [Вибрати джерела для завантаження пакетів при оновленні системи] - з'явиться інший екран, що містить всі репозиторії, додані раніше за допомогоюUrmpi. Ви можете увімкнути або вимкнути їх простим клацанням миші. (Якщо ви не додавали додаткові репозиторії, зробіть це зараз: під час використанняEasyUrmpi, як я показував, вам буде видано набір команд, які можна просто скопіювати та вставити в консоль.)
Вітаємо, ви гуру.
Після натискання кнопки Apply[Застосувати] пакети будуть завантажені та встановлені з віддалених репозиторіїв або Mandriva DVD. Установивши програму, натисніть кнопку Close [Закрити] для повернення у вікно керування пакетами. Список встановлених пакетів можна викликати за допомогою інструмента видалення, а заразом і ліквідувати непотрібні пакети.
Зі знанням RPM-команд, графічні інструменти Mandriva повинні стати зрозумілими: загалом, вони дають найпростіший спосіб встановити або видалити програму. Доступні репозиторії містять велику частину програм, необхідних для повсякденної роботи, а якщо ні, то EasyUrmpi дозволить їх додати, і вам не доведеться знову переривати всю мережу в пошуках потрібної програми. А якщо доведеться, то спробуйте спочатку установку за допомогою Urmpi, а RPM використовуйте як останній засіб. Сподіваюся, я показав вам, що командного рядка боятися не треба, і що для деяких завдань (наприклад, для додавання репозиторіїв до Urmpi) вона швидше за графічні інструменти. Ваша подорож Linux продовжується. LXF