FAQ Керівництво по установці програм в Linux

  1. Читайте також:

Кажуть, що переїзд, в тому числі і офісний переїзд , Можна прирівняти до стихійного лиха. Це буде справедливо в будь-якому випадку, навіть при «переїзді» з однієї операційної системи на іншу, наприклад, з Windows на Linux. Добре, якщо цю роботу виконають професіонали, а якщо ви самі? З огляду на, що ви поки ще (підкреслюю) ламер - в хорошому сенсі цього слова, або «чайник», простіше кажучи? .. Всьому можна навчитися.

офісний переїзд

Пропоную додати в закладки цей невеликий FAQ по установці програм в Linux.

Помічаю останнім часом, що криза якось неправильно впливає на наших вітчизняних підприємців - дорожчає все на очах. Якщо на Заході в цей нелегкий час йдуть назустріч людям, то у нас готові з почуттям, не поспішаючи, здерти останню шкуру. Недостатньо просто купити торгове обладнання, треба ще й залишатися людьми. Не кажу про продукти та інше, простий приклад - ще місяць тому журнал «Chip» коштував 180 рублів з диском, тепер все 200. До речі, дуже рекомендую журнал для прочитання, в ньому завжди багато корисної інформації, а на диску «тонни», в тому числі і безкоштовного, програмного забезпечення, включаючи дистрибутиви Linux. Це керівництво, трохи перероблене, від «Chip» . Для тих, хто його ще не читає.

Існує поширена думка, що процес установки програм в Linux складніше, ніж в Windows або Mac OS. Можна розвіяти ці міфи, ось керівництво, що розкриває чотири універсальних методу інсталяції програмного забезпечення в сучасних дистрибутивах Linux. В якості введення інформація про ряд відмінних рис Linux, про які важливо знати при установці нових програм. Для повноти картини приклади з використанням командного рядка, але найчастіше в її використанні немає необхідності. Зазвичай для установки досить пари кліків по піктограмі пакету, введення пароля і підтвердження установки.

Ключові відмінності Linux від Windows

1. Linux чутливий до регістру, тобто abc.Doc, ABC.DOC і abc.doc - три абсолютно різних файлу
2. Для того щоб викликати файл допомоги з будь-якого додатку, досить виконати в консолі команду man SOFT, де SOFT - назва програми. Приклад: man mc викличе файл допомоги по файловому менеджеру mc. Якщо ж ви хочете отримати коротку довідку, скористайтеся командою виду mc -help.
3. Для позначення положення в файлової системі використовується не зворотний слеш \, як Windows, а слеш /, тобто директорії позначаються як / home / user /, а не \ home \ user \
4. У файлової системи Linux є коренева директорія /, всередині якої знаходяться всі інші директорії.
5. Більшість додатків встановлюються не в одну конкретну директорію, а розподіляють свої компоненти з різних тек файлової системи в залежності від їх типу. Наприклад, конфігураційні файли в / etc, індивідуальні файли налаштувань користувачів - в / home / USER /, виконувані файли - в / bin або / usr / bin, а бібліотеки - в / lib.

Зазвичай представлений наступний список:
• / bin - виконувані файли;
• / boot - файли необхідні для завантажувача;
• / dev - файли пристроїв (для Linux будь-який пристрій представляється як файл);
• / etc - файли налаштувань;
• / home - домашні каталоги користувачів;
• / initrd - директорія для RAM-диска;
• / lib - бібліотеки;
• / lost + found - відновлювані після випадкового видалення файлів;
• / media та / mnt - містять точки монтування, тобто через ці директорії здійснюється доступ до CD / DVD, флеш-картах, вінчестерам і іншим локальним і мережевим накопичувачів;
• / opt - в цю директорію встановлюються певні програми;
• / proc - віртуальна файлова система;
• / root - домашня директорія Адміністратора комп'ютера;
• / sbin - системні виконувані файли;
• / srv - дані системних служб, наприклад FTP-сервера;
• / tmp - тимчасові файли;
• / usr - вторинна файлова система;
• / var - змінювані дані, наприклад логи.

Про залежність

Q: Що таке Залежності (Dependency - англ., «Депенденс» - сленг) і навіщо вони потрібні?

A: Практично кожній програмі для коректної роботи потрібні бібліотеки і ресурси зовнішніх додатків. Ці вимоги і називаються залежними. У Windows існує єдина архітектура і єдиний стандартний набір бібліотек, присутній в кожній системі. Тому багато програм спираються на цей стандартний набір і встановлюють тільки ті додаткові компоненти і бібліотеки, яких немає в системі за замовчуванням. У Linux загального універсального набору бібліотек немає, і загальним для всіх дистрибутивом є тільки ядро ​​і базовий набір утиліт. Щоб забезпечити працездатність своїх програм, творці додатків змушені прямо вказувати в установчих пакетах, до яких додаткові інформаційно-бібліотекам звертається їх дітище. Відповідно, щоб програма запрацювала, спочатку потрібно встановити відсутні компоненти.

Наприклад, програма може являти собою графічний інтерфейс для консольного архиватора. І вся її завдання - це перевести дії користувача, наприклад мишею, на мову цього самого консольного архиватора. Простий приклад: користувач клікнув в віконці програми по значку «Видобути», а програма передає відповідну команду архіватор. Коли архіватор закінчує роботу, програма перехоплює дані про операції і повідомляє користувачеві результат. В результаті для створення і розпаковування архівів більше не потрібно вивчати пристрій архиватора і використовувати командний рядок. Однак якщо не встановити сам консольний архіватор, програма працювати не зможе. Таким чином, він є її Залежність. Головний недолік Залежностей полягає в тому, що вони часто викликають конфлікти.

Уявіть що одній програмі для роботи потрібна бібліотека /lib/chip.lib версії 1.26, а інший - більш рання версія 0.93. У підсумку просто так ці дві програми не встановиш, адже дві різні версії однієї і тієї ж бібліотеки можуть виявитися фактично несумісними між собою. Залишається або встановлювати більш старі версії програм, або чекати, поки обидві програми навчаться працювати з єдиною бібліотекою. Третій варіант - самостійно вирішувати конфлікт. У найпростішому випадку може допомогти створення жорсткої посилання на бібліотеку командою виду.
sudo ln /lib/chip-0.97.lib /lib/chip-1.26.lib
А в більш складному - потрібно правити вихідний код додатків, що вже вимагає глибокого знання Linux і її командного рядка, а також певних навичок програмування.
Другий ключовий недолік Залежностей - сам факт того, що додаткові компоненти потрібно окремо завантажувати і встановлювати. Гаразд, якщо залежність одна, але їх може бути скільки завгодно - і десять, і п'ятдесят, і сто.
За вище названих причин на ранніх етапах розвитку Linux Залежності були справжнім лихом і викликали священний жах у непосвячених. Благо, в сучасних дистрибутивах проблема, за рідкісним винятком, повністю вирішена. При установці нових програм такі менеджери пакетів, як rpm (Fedora, Mandriva і.т.д.) і apt (Debian, Ubuntu і т.д) і ін., Самі аналізують, які пакети необхідно завантажити і встановити. А від користувача потрібно тільки кликнути мишею в зручній графічній оболонці і погодитися з установкою додаткового ПЗ. Все необхідне буде завантажено та встановлено автоматично.

Все необхідне буде завантажено та встановлено автоматично

Про права адміністратора

Q: Що означає повідомлення «у вас недостатньо прав для установки програми»? І хто такий користувач root?

A: У Linux існує чітке розмежування прав користувачів. Зазвичай тільки адміністратор або користувач, який створив файл (або каталог), можуть виконувати з ним будь-які операції. У той же час будь-який файл можна зробити доступним для певних груп користувачів і недоступним для інших. Наприклад, користувачі з групи гостей отримають можливість тільки читати вміст документа, а привілейований користувач - читати і вносити в нього зміни.
root - це кореневої користувач, привілейований користувач або адміністратор комп'ютера, що володіє необмеженими правами в системі. Постійно працюючи з його правами, ви підриваєте безпеку системи і ризикуєте випадково привести її в неробочий стан. Тому рекомендується створити звичайного користувача з обмеженими правами і виконувати повсякденні завдання від його імені.
У той же час такі операції, як установка нових додатків, доступна тільки адміністратору. Тому іноді необхідно тимчасове отримання прав суперкористувача. Воно досягається виконанням команди su або sudo. Команда su переведе командний рядок в режим адміністратора і дозволить виконувати в ній будь-які операції.
Увага! У деяких дистрибутивах Linux команда su заборонена за замовчуванням, і слід використовувати sudo замість неї. Команда установки файлового менеджера mc в Ubuntu матиме такий вигляд:
apt-get install mc
Але якщо цю команду вписати в «Термінал» з правами звичайного користувача, установка перерветься помилкою. Виконуючи ту ж команду від імені адміністратора, консоль продовжить установку. Команда буде виглядати так:
sudo apt-get install mc
Якщо ж ви хочете виконати тільки одну операцію в консолі, досить ввести sudo на початку команди. Так, наступна команда видалить весь вміст директорії music, навіть якщо ви не є користувачем user (власником цієї директорії):
sudo rm -rf / home / USER / music
Слід зауважити, що повідомлення про відсутність прав на операцію з файлами може бути викликано некоректної розстановкою його атрибутів. Для того щоб вирішити будь-якому користувачеві будь-які операції з файлом chip.pdf, що знаходяться в директорії / home / USER / Documents / chip /, досить перейти в її директорію:
cd / home / USER / Documents / chip
і ввести:
sudo chmod 777 chip.pdf

Для видалення файлу можуть знадобитися права записи в каталог, в якому він знаходиться.

Чотири способи установки ПО в Linux

Q: Що таке Tarball ( «Тарболли») і бінарні пакети?

A: Tarball - це звичайний архів формату TAR, TGZ, TBZ або TAZ. Усередині нього може бути все що завгодно. Однак якщо ви завантажили дистрибутив програми з Інтернету або взяли з CHIP DVD, а сам файл має подібне розширення, то всередині, швидше за все, вихідний код програми. Однак це може бути і бінарний файл. В такому випадку всередині архіву ви знайдете виконуваний файл з дозволом RUN, BIN, IN або подібним. Разархівіруйте тарболл в вільну директорію і запустіть мишею виконуваний файл. Все, що програма не встановлена.
Якщо щось піде не так, спробуйте перевірити права на виконуваний файл. Запустіть командний рядок і введіть:
sudo chmod 777 /home/USER/FILE/file.run
Таким чином, файл стане доступним для запуску всім користувачам.
По-друге, корисним буває звернутися до прикладеного файлу допомоги, наприклад help.txt або readme.txt. Якщо ви захочете запустити додаток з консолі, скористайтеся командою виду:
./*.run - для файлів з дозволом RUN
sh * .bin або sh * .sh - для файлів з дозволом BIN і SH
java -jar * .jar - для Java-архівів

Зірочкою «*» з довільним дозволом позначається виконуваний файл програми. Він може являти собою як готове до роботи додаток, так і установчий пакет. Можливо, буде потрібно запустити ці команди від імені адміністратора.

Переваги: відносна універсальність, простота в установці

Недоліки: установка і використання в обхід менеджера пакетів системи, можливі складнощі з видаленням програми, необхідність створювати асоціації файлів і ярлики вручну

Висновок: рекомендується до використання тільки в разі відсутності інших варіантів

Q: Як збирати пакети з вихідного коду?

A: Якщо ви завантажили Tarball, розпакували його і отримали директорію з безліччю файлів, серед яких є файли з іменами readme і install, то, швидше за все, це вихідні коди програми. Часто архів вихідних текстів має ім'я виду abc-0.8.7.tar.gz, де abc - ім'я програми, а 0.8.7 - її версія. У самому банальному випадку для установки програми потрібно кілька простих кроків:
1. Створюємо директорію для вихідних кодів програми, поміщаємо туди архів і розпаковуємо його командою:
tar xfzv abc-0.8.7.tar.gz
2. Конфігуріруем додатком командою
./configure
У ряді випадків скрипта конфігурації configure немає, і крок можна пропустити.
3. Дочекавшись, поки конфігурація закінчиться, можна запускати встановлювати додаток командою:
make && sudo make install
4. Для видалення програми слід скористатися командою:
sudo make uninstall

Для виконання названих операцій в системі повинен бути встановлений компілятор (зазвичай gcc), а також всі необхідні бібліотеки. Іноді під час установки виникають помилки, і найкращим способом їх дозволу є пошук інформації про них в Інтернеті.

Переваги: ​​гранична гнучкість при конфігуруванні додатки, можливість редагування початкових кодів програми перед установкою, можливість компіляції максимально продуктивно додатки.

Недоліки: можливі проблеми з залежністю, спосіб вимагає впевненого знання системи, найповільніший і трудомісткий спосіб установки програм, можливі складнощі з видаленням програми (необхідно зберігати директорію з вихідними кодами), необхідність створювати асоціації файлів і ярлики вручну.

Висновок: настійно НЕ РЕКОМЕНДУЄМО збирати програми з вихідних кодів, якщо їх дистрибутиви є в репозиторії вашої системи. Це дозволить заощадити час і забезпечити кращий контроль над системою в цілому. Однак якщо ви хочете отримати максимально продуктивний пакет або просто немає інших варіантів, то цей спосіб для вас.

Q: Як встановлювати специфічні пакети дистрибутива (наприклад, DEB, RPM)?

A: У більшості дистрибутивів досить пару раз клікнути по пакету, ввести пароль адміністратора і дочекатися кінця установки. Однак в системі повинні бути встановлені всі Залежності потрібну програму. На додаток до всього не кожен DEB-пакет підійде до будь-якого дистрибутива сімейства Debian (Ubuntu), і не кожен RPM-пакет - до будь-якого дистрибутива сімейства RedHat (Fedora). Бажано встановлювати тільки ті пакети, які були спеціально скомпільовані для вашої системи. Часто про призначення пакета можна судити по його назві. Наприклад, пакет abc-0.9.7-ubuntu.deb, швидше за все, було скомпільовано для Ubuntu, а bcd-1.0.3-opensuse.rpm - для OpenSUSE.

Переваги: можливість установки кожного пакету окремо

Недоліки: можливі проблеми з залежністю

Q: Що таке репозиторії, і як слід встановлювати програми з допомогою менеджера пакетів?

A: У контекте Linux Репозиторії, або Репозитарії (англ. «Repository» - сховище) - це деяке сховище настановних пакетів для вашої системи. Наприклад, репозиторій pacman забезпечує користувачів OpenSUSE можливістю завантаження і установки найактуальніших додатків для їх дистрибутива.
До системи можна підключити і кілька репозиторіїв. Наприклад, інсталяційний DVD, локальне дзеркало вашого провайдера і офіційні віддалені сервери. Чим більше сховищ ви підключите, тим ширше вибір програм для установки. Однак між деякими репозиторіями виникають конфлікти, і слід вибрати з конфліктуючих репозиторіїв тільки один. Більш детальну інформацію про репозиторіях ви зможете прочитати на сайті вашого дистрибутива.
Увага, для різних версій одного і того ж дистрибутива можуть вимагатися різні репозиторії!
Для запуску менеджера пакетів зазвичай слід вибрати пункт меню з назвою на кшталт «Установка і видалення програм» або «Менеджер пакетів». Далі буде потрібно ввести пароль адміністратора, і можна здійснювати пошук необхідного додатки у вмісті репозиторіїв.
Після того як потрібний додаток буде знайдено, потрібно клікнути на кнопку «Встановити» - і менеджер пакетів сам встановить всі необхідні компоненти, включаючи залежності.

Переваги: висока швидкість установки, простота установки, гранична актуальність і сумісність між собою пакетів

Недоліки: потрібен доступ до Інтернету або повне зібрання вмісту репозиторіїв на локальних носіях

Висновок: оптимальний спосіб установки програм в Linux - просто, швидко і надійно.

Читайте також:

Вам сподобалася стаття? Чи не хочете пропускати нові? тоді підпишіться на RSS або отримуйте нові статті на електронну пошту

Добре, якщо цю роботу виконають професіонали, а якщо ви самі?
З огляду на, що ви поки ще (підкреслюю) ламер - в хорошому сенсі цього слова, або «чайник», простіше кажучи?
І хто такий користувач root?
Q: Як встановлювати специфічні пакети дистрибутива (наприклад, DEB, RPM)?
Чи не хочете пропускати нові?

Дополнительная информация

rss
Карта