Как да получите правилната програма
Да приемем, че вече сте определили точно нуждите си и сте разбрали по един или друг начин името на програмата "Linux", от която се нуждаете. Как да го получите и инсталирате?
Търсете сред инсталираните пакети
Първо проверете - може би програмата, от която се нуждаете, вече е инсталирана. Обикновено като име на необходимата „програма“ е възможно да се разбере не името на конкретен изпълним файл, а името на проекта, в рамките на който се разработва тази програма (въпреки че те често съвпадат или поне са подобни). Почти сигурно е, че името на проекта ще бъде същото или част от името на съответнияпакет в ALT Linux. Например, нека си представим, че се интересуваме (след прочитане в пощенския списък) от добре познатия имейл клиент за Linux - mutt, който често е наричан с епитетите "мощен" и "гъвкав".
Нека проверим дали има пакет с подобно име сред инсталираните:
Командата rpm -qa изброява всички пакети, инсталирани в системата, след което този списък беше предаден на филтъра grep за търсене на желания низ, специално извикан с ключа -i, така че възможните разлики в главни/малки букви в името да не пречат на намирането на правилния. В резултат на това се намира пълното (включително версия и номер на компилация) име на инсталирания пакет.
И така, пакетът mutt вече е инсталиран, сега трябва да научите как да работите с него - за това е полезно да разберете какъв вид документация има този пакет.
За съжаление, не всички пакети са толкова добри с документацията, колкото са с mutt. Понякога въпросът се ограничава до кратък README, понякога дори и това. В такъв плачевен случай остава да разберете кои помощни програми има в пакета (може да има няколко от тях и имената им не е задължително да приличат на името на пакета) и да се опитате да получите кратка помощ от тях заизползвайте чрез извикване с клавиша --help.
rpm -ql име на пакет изброява всички файлове, които принадлежат към посочения пакет. Това работи само за пакети, които вече са инсталирани и следователно файлове, които вече съществуват в системата. Името_на_пакета може да бъде указано без номер на версията, както в нашия пример. След филтриране на списъка с файлове, търсещи кофата за низове - името на директорията за изпълними файлове - получихме списък с всички помощни програми в този пакет.
Разпределение
Не всички пакети, включени в дистрибуцията (и това обикновено са няколко хиляди), са включени в инсталацията по подразбиране. За да търсите сред пакетите, налични в дистрибуцията, но все още неинсталирани, можете да използвате мениджъра на APT пакети (команда за търсене на apt-cache) или която и да е графична обвивка за него, например alterator-packages или synaptics. Разпространението на APT обикновено е конфигурирано по такъв начин, че веднага след инсталирането APT кешът съхранява база данни с информация за всички пакети, включени в разпространението, дори ако са разпръснати на няколко компактдиска. Можете да инсталирате намерения пакет, като използвате стандартни инструменти apt-get или именувани графични обвивки.
Само специално подбрани пакети влизат в комплекта за разпространение, които се тестват и евентуално допълнително конфигурират, за да представят на потребителя система, която вече е адаптирана за определени задачи. Не е възможно да се включи произволна програма от произволен източник в разпространението, причината за това сазависимостите между програмите. Всяко несъответствие в зависимостите (например по-стара или по-нова версия на системната библиотека) може да доведе до това, че програмата не работи или дори не може да бъде инсталирана. Следователно комплектът за разпространение е съставен не само от набор от пакети, но и от пълнохранилище, в коетоверсиите на всички пакети са строго координирани. Частта от това хранилище, която не е включена в дистрибуцията, се нарича донякъде жаргонно, но много точна половин думаcontrib 1 .
В contrib остават тези пакети, които не са имали късмета да бъдат включени в разпространението. И именно в contrib трябва да потърсите първо, защото ако програмата бъде намерена там, тогава тя гарантирано е инсталирана на вашата система. И ако тя се нуждае от нещо друго за инсталиране, тогава е гарантирано, че всички необходими пакети от необходимите версии ще бъдат намерени или в комплекта за разпространение, или в същия contrib.
Contrib може да се разпространява със или паралелно с разпространението на CD. И така, приносът към дистрибуцията ALT Linux 3.0 Compact е включен в DVD версията на дистрибуцията. В допълнение, пълните хранилища, включително contrib, за тази и други дистрибуции са достъпни на официалния ALT Linux ftp сървър и неговите огледални сървъри.
За да работите с contrib, трябва да използвате същия стандартен пакетен мениджър на APT. Единственото изискване е да посочите подходящото хранилище в списъка с APT източници (посочете URL адреса в /etc/apt/sources.list или изпълнете apt-cdrom add, вижте APT документацията за подробности). След това можете да работите с пакетната база на дистрибуцията и да допринасяте като едно цяло, няма да възникнат противоречия или конфликти.
В преследване на новото
Понякога необходимата програма е в дистрибуцията, но вече е доста стара, така че някои необходими функции се появиха след излизането на дистрибуцията и искам да актуализирам програмата. Има ли "актуализации" и откъде да ги взема?
За всяка дистрибуция актуализациите са задължително пуснати и публикувани в мрежата. Например за дистрибуцията ALT Linux 3.0 Compact те могат да бъдат намерени на официалния ftp сървър и, разбира се,на неговите огледала. Такива актуализации се правят, ако след пускането на дистрибуцията се открият сериозни грешки в включените в нея програми, предимно такива, които застрашават сигурността на системата. Но това е всичко: такива актуализации не са предназначени да включват нови функции (новите функции идват с нови грешки!), така че е много желателно да правите такива актуализации редовно, но няма да намерите нова функционалност там.
Новите версии на програми за старата дистрибуция са точно целта, преследвана от създателите на хранилището на backports. Тук обаче никой не може да гарантира, че новите версии ще работят толкова стабилно, колкото старите. Трябва да работите с тези хранилища по същия начин, както с актуализациите, като посочите APT в техния списък с източници, конкретни инструкции са дадени на уебсайта на хранилището, там също се публикуват новини за актуализирани версии на програми.
Откъде идват новите версии? Сега вече не е възможно да се мълчи за основното ежедневно актуализирано хранилище, чиито парчета стават основа за избор на пакети за ALT Linux дистрибуции - Sisyphus. Именно в това хранилище разработчиците периодично публикуват нови версии на своите пакети (и в пакети, нови версии на софтуер), а целият процес на неговото развитие олицетворява постоянното подобряване на програмите 2 .
Разбира се, Sisyphus не включва целия съществуващ безплатен софтуер за Linux, но много, много - сега той има повече от пет хиляди пакета с изходни източници. Редовно в него се появяват нови пакети, които не са били събрани преди това, но също така някои от старите, които са загубили своята релевантност, интерес на разработчиците или функционалност (или дори всичко това заедно), редовно се премахват.
Сизиф може да служи като един вид препоръчителен списък, за да изберете измежду невероятнитеброя на алтернативите, предлагани от света на свободния софтуер. Колкото повече се използва програмата, толкова по-обещаваща, по-надеждна, по-ефективна е тя - толкова по-вероятно е екипът на ALT Linux да намери някой, който да я компилира за Sisyphus. За потребителите на дистрибуции на ALT Linux, Sisyphus е източникът, който не бива да се забравя, ако програмата не е намерена нито в дистрибуцията, нито в актуализациите. Информация за мигриране към Sisyphus от конкретни ALT Linux дистрибуции може да бъде намерена на уебсайта на разработчиците.
Ако имате нужда от „точкова“ актуализация на конкретен пакет, чиято подходяща версия е налична в Sisyphus, тогава най-разумният подход е да пишете на специален пощенски списък и да предложите да изградите този пакет за вашата дистрибуция. Възможно е да се наложи да го направите сами, но не трябва да се страхувате от това - благодарение на хешер технологията, използвана в ALT Linux за изграждане на пакети, можете да възстановите пакет от Sisyphus за backports в няколко стандартни стъпки. Повторното изграждане изисква само пакета изходен код от Sisyphus и пълното хранилище (contrib) на съответната дистрибуция.
Самосглобяване от източника
Има широко разпространено схващане, че самите "наистина страхотни потребители на Linux" трябва да компилират ("изграждат") програми от изходния код. В нашата презентация тази възможност не беше случайно на последно място: ако поне един от горните методи работи, не трябва да компилирате от изходни текстове. В общия случай, дори ако единственият начин за достъп до хранилището за вас е чрез модем, пак ще бъде по-бързо и по-удобно да използвате готова пакетна база данни, отколкото сами да създавате програми, вече компилирани от някого.
Това може да се нарече огромна маса от технически и нетехнически причини: поне фактът, че вХранилищата на Sisyphus имат много високи стандарти за качество на изработката и така че ако е там, вероятно е на доста професионално ниво. Често има много клопки в сглобяването, които могат да направят този процес дълъг, болезнен и безплоден. И следите от дори неуспешно сглобяване, извършено без подходящи предпазни мерки точно в работещата система, могат да повредят тази система до пълна неработоспособност.
И не винаги следите от неуспешна инсталация са толкова лесни за изтриване. Представете си ситуация, при която, за да изгради, програма инсталира своя собствена версия на стандартната системна библиотека в системата (ако изграждате като root, това ще стане гладко и незабележимо). Но какво ще стане, ако процедурата за сглобяване на софтуер, взет от непроверен източник, съдържа злонамерени фрагменти, които вие сами изпълнявате с права на суперпотребител?
След изброените ужаси може да възникне въпросът: но не боговете събират програми? Точно така и ако умеете да го правите компетентно (или сте готови да се учите) и заобикаляте всички клопки (или сте готови да се спъвате) - защо не споделите резултатите от работата си с другите? Създайте пакет за Сизиф!
1Полудума - защото не е цяла дума, а традиционно установено съкратено име за съответната директория на ftp.
2Нищо чудно, че хранилището е кръстено на Сизиф.