СОФТВАРНЫЙ МИР В LINUX: апдейтим систему без проблем! Докучаев Дмитрий aka Forb Спецвыпуск Xakep, номер #031, стр. 031-016-1 (forb@real.xakep.ru) Являясь поклонником операционки Windows, ты, наверное, знаешь, как просто устанавливается софт. Весь процесс установки сводится к двум-трем щелчкам мыши по исполняемому инсталлятору и паре диалоговых кнопок OK. В Linux все гораздо сложнее и интереснее одновременно. Если ты желаешь познать весь волнующий душу процесс установки софта под Linux, то данная статья будет для тебя очень ценным мануалом. В противном случае, мой тебе совет - оставайся поклонником форточек и с гордостью переворачивай страницу журнала, и да поможет тебе Microsoft :). Однако не забывай, что ты никогда не знаешь, что творит инсталлятор на твоей тачке (уже давно не секрет, что некоторые злодеи подсовывают юзверю под видом инсталляшки крутой софтины деструктивный код). В общем, ты - не хозяин положения. Linux, как и любая уважающая себя система, позволяет пользователю устанавливать программное обеспечение, или попросту софт. Этот самый софт распространяется двумя способами: бинарниками, подогнанными под конкретную систему, или source кодом (попросту сорцами), которые собираются на месте при помощи makeutils. ЧТО ТАКОЕ RPM И С ЧЕМ ЕГО ЕДЯТ В первую очередь, остановимся на бинарном софте. Всю неблагодарную работу по распаковке и установке этого вида программного обеспечения выполняет /bin/rpm. RPM расшифровывается как RedHat Packet Manager, но не стоит думать, что он актуален только лишь для дистрибутива RedHat. На самом деле, rpm-инсталлер имеет место практически на всех видах Linux. Изначально система собирается с помощью RPM. Распаковывая и устанавливая бинарники, содержащиеся на CD, инсталлер приводит Linux к рабочему состоянию. Перед установкой очередного пакета manager проверяет его на зависимость от других пакетов. К примеру, инсталлятор откажется устанавливать пакет mc, если в системе отсутствует ncurses. Для справки, проверку на зависимость можно игнорировать параметром -nodeps, но о фатальных последствиях этого ключика я тактично умолчу :). Хотя я не раз встречал людей, собиравших серьезные вещи с -nodeps и делавших при этом роковую ошибку. Видя удобство и привлекательность rpm-пакетов по сравнению с обычными сорцами, пользователи устанавливают именно их. Но их выбор чреват большими проблемами. Дело в том, что нельзя с полной уверенностью доверять RPM, ибо только сборка сорцов гарантирует стабильность в работе приложений. Например, юзер установил новое ядро через rpm-пакет, а на следующий день оно наградило систему kernel panic'ом. Вывод - придерживайся установки из сорцов. К слову говоря, Linux не единственная операционка, включающая в себя поддержку бинарных пакетов. FreeBSD, например, имеет аналоговый pkg_add, SunOS - pkgadd и т.д. Если сравнивать с форточками, то бинарные пакеты - единственный вид софта под Вынь. Ведь MicroSoft уже много лет хранит source code системы в строжайшей тайне :). СОФТ ИЗ СОРЦОВ - НАШ ВЫБОР! Согласно GNU Licence, весь софт в Linux распространяется только открытым кодом. Как правило, он пишется на языке C, реже C++. Как ты, наверное, знаешь, лучше всего сжимается чистый текст, поэтому вся иерархия сишных файлов запаковывается в архив. |