Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Прочее - Linux-FAQ

Закрытая тема
Настройки темы
Прочее - Linux-FAQ

Аватара для ruslandh

info man howto


Сообщения: 6958
Благодарности: 384


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Официальная русская версия Linux-FAQ находится
здесь


Сделал зеркало официального Linux-FAQ :
http://www.ruslandh.narod.ru/rulinux...linux.faq.html


Представляю общему обозрению FAQ к разделу Linux, прошу Ваших замечаний и поправок.


Linux FAQ
(Написан на основе переписки с Пановым Дмитрием
* * * * * * * * * <panovdu@land.ru>


Вопрос:

Как установить программу в Linuх


Ответ:

Установка пакетов в Linux

* *Установка пакетов из тарбола.

*Тарболом называется архив с упакованными исходными текстами программ. Обычно они имеют расширение tar.gz или tar.bz

Программисты создают проект пакета (например с помощью Kdevelop), в
*котором есть все makefile и файлы конфигурации (configure), а потом упаковывают
*их в тарболы.
* В случае доработки пакета создаются Patch-и к *исходным текстам,
*которые заменяют одни строки текста программ на другие.

*Из готового тарбола (если он учитывает все нужные патчи) можно
* получить исполняемые программы с помощью команд:
* 1 разархивировать тарбол (команды не помню, т.к. для этого
* пользуюсь MC)
* 2 переходим в папку с разархивированным тарболом
* *cd _Имя_Директории_
* 3 конфигурим пакет
* *configure
* *(в тяжелых случаях нужно будет в параметрах указать пути для всех
* *необходимых библиотек и header-файлов - но к счастью, обычно на
* *близких системах они лежат одинакого и сам скрипт configure их
* *находит, также параметы могут потребоваться, если пакет будет
* *распологаться не в том месте, где предполагал разработчик
* *программы, а в каком-либо другом )
* 4 Создаем пакет:
* *make
* 5 Устанавливаем пакет
* *make install
* *(последний этап можно теоретически сделать и в ручную скопировав
* *файлы в нужные места) Хочу подчеркнуть, что это наиболее опасный
* *этап - перед ним желательно позаботится о том, как восстановить
* *старый пакет, если в новом есть ошибки.
*
* *Установка пакетов из сорца (spc.rpm)
*
*Тарболы и прикладываемые к ним patch-и упаковываются в пакеты-сырцы
*(.SRC.RPM)(бывают и другие системы пакетов - но я говорю о дистрибутивах на
*основе RPM - Red Hat, Mandrake, SuSe).
*
* RPM-пакет - это особо организованный архив, в который помимо данных
*(тарбола и патчей - для сырца, необходимых программ - для бинарного
*RPM) *упакованы скрипты установки и обновления.

*C помощью сырца можно создать бинарный RPM - т.е. такой RPM, в
*котором упакованы исполняемые пакеты.

* Причем, если RPM создан на текущей машине, он теоретически будет
* наилучшим образом подходить к текущей конфигурации пакетов
* (именно поэтому многие администраторы наиболее важные пакеты
* собирают из сырцов заново на своей машине).

*В результате установки сырца
*- в директорию /usr/src/RPM/source
*помещаются все необходимые тарболы (обычно один) и патчи (может быть
*много, а может быть и не одного - все зависит от разработчика и
*составителя конкретного RPM).
*- В директорию /usr/src/RPM/spec помещается установочный скрипт (файл с
*расширением spec) в котором разработчик RPM помещает все действия по
*установке пакета - разархивирование тарбола, накладывания патчей,
*транслирование и *т.д. Разработано уже много макросов для spec-файлов.
* С наиболее старыми из них и общей теорией их построения а также
* опциями команды rpm *можно познакомится в RPM-HOWTO
* *(русская версия его есть у меня на страничке www.ruslandh.narod.ru).

* При построении пакета все операции с исходным текстом программ
* обычно (но не всегда) помещаются в /usr/src/RPM/builder, а новые
* полученные пакеты (новый сырец и новый бинарник) помещаются
* соответственно в /usr/src/RPM/RPMS и /usr/src/RPM/SRPMS.

* Получить из установленного сорца соответствующий пакет
*можно с помощью команды
* *rpm -ba paket.....spec
*(см RPM-HOWTO)

Установка пакетов из RPM

* *В дистрибутивах Red Hat, Mandrake, Suse, AltLinux, ASP Linux и некоторых других, программы (состоящие, как правило,
из нескольких файлов) распространяются объединенными в пакеты формата RPM (RedHat Packet Manager).
* С помощью программы rpm можно легко устанавливать, модифицировать, удалять и создавать пакеты программного обеспечения,
а также получать о них разнообразную информацию. Все эти дистрибутивы * (кроме программы начальной установки) состоят
из таких пакетов.
* Каждый пакет определяется именем программы, номером ее версии и номером версии релиза этой программы дистрибутива,
а также архитектурой пакета.
Например, bash-2.0.5-alt2.i586.rpm: в этом пакете имя – bash, номер версии – 2.0.5, номер релиза – alt2, архитектура – i586.
Чем больше номер версии (или при одинаковых номерах версии – чем больше номер релиза), тем, соответственно, новее пакет.

Управлять пакетами можно из командной строки при помощи программы rpm, которая имеет следующий синтаксис:
rpm -options rpm_package_name

Далее приводятся возможные параметры.

Установка пакета. Вы можете установить программу, используя опцию -i (опции -v и -h выставлены здесь для того,
чтобы включить визуальное отображение процесса установки). Например, для того, чтобы установить klyx, наберите:
rpm -ivh klyx-0.10.9-ipl6mdk.i586.rpm
(настоящее имя зависит от версии программы на доступном носитеое).

Заметим, что ipl6mdk означает, что пакет был модифицирован ALT Linux Team (ранее – IPLabs Linux Team)
для русской редакции, это его шестая сборка, он входит в дистрибутив Mandrake. i586 указывает на то,
что он скомпилирован для процессоров не ниже Pentium(tm).
Наличие в имени пакета аббревиатуры alt2 означает, что пакет был собран ALT Linux Team и это его вторая сборка.

Обновление пакета. Для того чтобы обновить программу (с целью установки более свежей версии),
нужно использовать опцию -U, вместо -i, это позволит сохранить все текущие конфигурационные файлы.
Если пакета ранее не было в системе, то он будет установлен.

Удаление пакета. Если вы желаете удалить пакет из системы, внимательно введите:
# rpm -e имя_пакета_без_номера_версии_и_релиза
то есть, например, для пакета klyx:
# rpm -e klyx
Если в процессе удаления пакета произойдет нарушение зависимостей, программа rpm сообщит об этом.

Информация о пакете. Вы можете запросить у rpm ряд полезной информации о пакете, не устанавливая
его – например, бывает удобно просмотреть список всех файлов пакета или краткое описание его возможностей.
Для этого используйте опцию -q (query, запрос).
-qi используется для получения некоторой информации о ранее установленном пакете;
-qip используется для еще не установленных пакетов.
В этом случае вы должны указать полный путь и имя пакета (например, /mnt/cdrom/Mandrake/RPMS/klyx-0.10.9-ipl6mdk.i586.rpm);
-ql используется для того, чтобы просмотреть список файлов пакета. Добавьте p, если пакет еще не был установлен;
-qa выдает список всех установленных пакетов (не нужно указывать имя пакета).
Будьте осторожны с опцией --force – ее можно употреблять только в тех случаях, когда вы хорошо знаете, что делаете.
Если надо установить два или более пакетов, зависящих друг от друга, то установите их одновременно:
# rpm -ihv foo-1.1-3mdk.rpm libfoo-1.5-2mdk.rpm

Часто бывает удобнее, однако, применять программы специально созданные для данного дистрибутива, например, rpmdrake,
разработанную MandrakeSoft, kpackage из KDE, gnorpm из GNOME или систему apt (AltLinux).
В дистрибутивах, родственных Mandrake удобнее управлять пакетами через графическую оболочку rpmdrake,
которую можно запустить через панель управления DrakConf (находящуюся на рабочем столе).
Можно выбрать два режима работы – установка или удаление – при помощи кнопок в правом верхнем углу.
Выделив пакет, можно получить информацию о нем, входящих в его комплект файлах, а также некоторую другую.
Нажав кнопку "Удалить выбранное" или "Установить выбранное", можно удалить или установить выбранные пакеты.
Часто бывает так, что требуемый пакет для нормального функционирования требует другие; в этом случае программа
предложит вам установить или удалить еще несколько пакетов. При удалении пакетов необходимо соблюдать осторожность,
чтобы не удалить важные части системы, например пакеты kernel или glibc.
Для использования функции обновления пакетов необходимо указать программе через меню Файл | Настройки дополнительный
источник пакетов, в качестве которого может выступать как ресурс Internet, так и локальный каталог или диск CD-ROM.
Установку пакетов весьма удобно выполнять и через консольную программу urpmi – с тем отличием,
что все действия будут выполняться менее наглядно.
Для установки пакетов, поставляемых ALT Linux Team, можно даже запускать программу urpmi не от имени суперпользователя,
а от обычного пользователя; единственное, что необходимо сделать для этого – добавить его в группу urpmi.

Для получения дополнительной информации наберите man rpm.

Вопрос:

Как установить ядро в Linuх


Ответ:



Установка ядра
Установка ядра, как и любого другого пакета в дистрибутивах с поддержкой rpm
возможна в трех стандартных вариантах:

1 Из тарбола (tar.gz)
2 Из сорца (src.rpm)
3 Из RPM (rpm)

Но в случае, если Вам необходимо добавить к ядру отдельный модуль, Вам будет достаточно
использовать исходные тексты текущего ядра (пакет kernel-source xxxx. rpm), которые обычно лежат в
/usr/src/linux.

*Установка из тарбола

Установка ядра достаточно подробно описано в Kernel-HOWTO (русский вариант есть
*на многих новых дистрибутивах и в интернете, английский - практически везде),

1 * *Конфигурирование модулей ядра
* * *a) из графики (X-в):
* * запусти с графической консоли в папке /usr/src/linux
* * * make xconfig
* * *b) с терминала make menuconfig, или make config
* * *
* * * Установи все необходимые параметры (чаще жми помощь -
* * * по-умолчанию все значки как быыли при последнем
* * * крнфигурировании - т.е. вначале как в дистрибутиве
* * * помни - лучшее враг хорошего)
2 * * Устанвка зависимостей *между пакетами
* * * make dep
3 * * Построение image ядра

4 * * дальше есть варианты
* *
* * *make install * * * * * *- * * * * * *установка ядра
* * *make modules * * * - * * * * * компиляция модулей
* * *make modules_install *- * *установка модулей
* * *make bzImage * * * * * * - * * создание имеджа ядра
* * *make bzlilo * * * *- * *

* * *Установка ядра из сорца
Для установки ядра из сорца, необходимо взять соответствующий сорец
kernel....spc.rpm, установить его и получить с помощью команды
prm -ba kernel.....spec соответствующие пакеты prm:
kernel-xxxx.rpm
kernel-sourse-xxx.rpm,
которые уже устанавливаются соответствующим образом.
См также Установка пакетов из сорца.


Установка из RPM
Установка из RPM происходит стандартным способом, характерным
для данного дистрибутива.


Примечания:

Примечание 1
> Подскажите пожалуйста, чем отличается перекомпиляция ядра в Mandrake от
> перекомпиляции в Red Hat?

В принципе ничем. Единственно сами пакеты ядра (rpm) могут иметь
другие зависимости от других пакетов, и в самом ядре могут быть
установлены разные патчи - а так, все ядра берутся из одного источника
(www.kernel.org) .

Но в принципе - ядра лучше компилить не под root (сделать локальную
копию /usr/src/ в домашнем директории) и после компиляции опробовать
его не удаляя старого (можно даже вначале загрузочную дискету с ядром
создать)

Примечание 2

(Из письма Димы)


P.S. Вот последовательность комманд для компиляции ядра в Mandrake (нарыл у них на сайте):
make mrproper
make dep
make clean * * * * * * * * /// rem - странная команда
make bzImage
make modules
make modules_install
make install.
Как Дима определил make install просто копирует
нужные файлы (system.map, vmlinuz, vmlinux...) в директорию /boot.

Примечание 3

(Из письма Димы)

Вопрос с перекомпиляцией ядра решился, и вот в чем было дело: *после
компиляции ядра и перед компиляцией модулей я не набирал команду
make install,
т.е. я откомпилил ядро след. командами:
make xconfig,
make dep,
make clean, * * * * //// *rem - а это-то зачем ???
make bzImage,
MAKE INSTALL,
make modules,
make modules_install.

При компиляции модулей никаких неописанных переменных не возникало и все прошло
на ура (как мне кажется).


[s]Исправлено: ruslandh, 18:48 15-08-2002[/s]


[s]Исправлено: ruslandh, 7:29 16-08-2002[/s]


[s]Исправлено: ruslandh, 8:32 21-08-2002[/s]


[s]Исправлено: ruslandh, 8:38 21-08-2002[/s]


[s]Исправлено: ruslandh, 8:40 21-08-2002[/s]

[s]Исправлено: ruslandh, 3:30 5-01-2003[/s]

[s]Исправлено: ruslandh, 9:01 8-03-2003[/s]

-------
Поспешай не торопясь

Это сообщение посчитали полезным следующие участники:

Отправлено: 05:59, 15-08-2002

 

Аватара для Barracuda

Редкий гость


Сообщения: 1769
Благодарности: 16

Профиль | Сайт | Отправить PM | Цитировать


Зачудительно!

-------
Жизнь - цепь, а мелочи - в ней звенья. Нельзя звену не придавать значения.(C) 80 дней вокруг света
---
Це все, що маю я... (С) Друга ріка


Отправлено: 07:42, 15-08-2002 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Unix-оид


Сообщения: 141
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата:
1 разархивировать тарбол (команды не помню, т.к. для этого
 пользуюсь MC)
стоило бы описать *.tar & *.tar.gz & *.gz, чтобы не задовали вопросы..

Цитата:
4 Создаем пакет:
  make
 5 Устанавливаем пакет
  make install
4 - наверное все-таки копилируем. 5 - уже скопилированное разбрасываем по директориям

Цитата:
Установка из тарбола
редко запаковываю ядро bzImage , в основном держал bzlilo.

P.S. имхо жаргона много.

-------
[b] Угадывай[b]


Отправлено: 17:11, 15-08-2002 | #3


Аватара для Barracuda

Редкий гость


Сообщения: 1769
Благодарности: 16

Профиль | Сайт | Отправить PM | Цитировать


leprikon
Цитата:
стоило бы описать *.tar & *.tar.gz & *.gz, чтобы не задовали вопросы..
Это база, которую надо бы знать.
Цитата:
4 - наверное все-таки копилируем.
Имхо - полемика (формально риводит к одному и тому же).
Цитата:
редко запаковываю ядро bzImage
Это личное дело каждого. Единственное, что можон добавит это замечание.
Цитата:
P.S. имхо жаргона много.
Это не жаргон, а суровая реальность. Если человек не знает понятие "исходник" или "тарбол" - прийдётся матчасть подучивать (такие моменты нельзя упускать, т.к. на основных определениях строится всё остальное).
Можно состряпать маленький словарик на эту тему для начинающих.

Добавлено:

P.S. Вот только синтаксис надо бы ввести (выделение курсивом, жирным цветом, шрифтом, комбинации).

-------
Жизнь - цепь, а мелочи - в ней звенья. Нельзя звену не придавать значения.(C) 80 дней вокруг света
---
Це все, що маю я... (С) Друга ріка


Отправлено: 17:36, 15-08-2002 | #4


Unix-оид


Сообщения: 141
Благодарности: 0

Профиль | Отправить PM | Цитировать


Barracuda

извини но! базу вижу от тебя в каждом посте, как ты ее разжовываешь, не проще в факе написать ?
Если упомянули про архив и описали даже rpm, почему бы остальное не описать...

полемики нет, есть разница в названии, можно назвать окно "дверью" - ведь она тоже открывается ?

Жаргон есть, напрмире чередования "сорца" "сырца" - одно и тоже, но заведет в заблуждение.

P.S. странно как-то... ну да ладно.... дело ваще...

-------
[b] Угадывай[b]


Отправлено: 18:04, 15-08-2002 | #5


Аватара для Barracuda

Редкий гость


Сообщения: 1769
Благодарности: 16

Профиль | Сайт | Отправить PM | Цитировать


leprikon
Цитата:
не проще в факе написать ?
Хорошо сказано, но не в этом. Лучше краткий справочник по отдельным часто встречающимся командам сделать (намедни про ls спрашивали - бывает, я сам всех опций не помню).
Цитата:
можно назвать окно "дверью"
Во загнул! Но тут скорее дверь с воротами сравнивать надо
ruslandh
Вообще надо бы привести к общему ключу все термины (или, по крайней мере, словарь состряпать).
Ухожу во временный вынужденный отгул до понедельника - отойду, обязательон намылю свой вариант(блин, меня дрючили по написать руководств очень долго - надо тряхнуть стариной)

-------
Жизнь - цепь, а мелочи - в ней звенья. Нельзя звену не придавать значения.(C) 80 дней вокруг света
---
Це все, що маю я... (С) Друга ріка


Отправлено: 18:38, 15-08-2002 | #6


Аватара для BigMac

Призрачный админ


Сообщения: 5254
Благодарности: 90

Профиль | Отправить PM | Цитировать


Все классно, но поддерживаю leprikon
в плане
Цитата:
стоило бы описать *.tar & *.tar.gz & *.gz, чтобы не задовали вопросы..
и жаргон надо убрать...это же FAQ для чайников..

-------
Истина где-то рядом...


Отправлено: 18:40, 15-08-2002 | #7


Аватара для Dimon

Ветеран


Сообщения: 551
Благодарности: 13

Профиль | Отправить PM | Цитировать


На мой взгляд надо в пункт "Установка пакетов из тарбола" добавить вот еще что:
- перед разархивацией тарбола следует посмотреть все ли его файлы находятся в одной директории (а то   было такое, что распаковав архив я обнаружил, что программа была в виде кучи директорий и еще большей кучи файлов и все это добро оказалось у меня в домашнем каталоге )
- для разархивации из командной строки можно воспользоваться, например, командой tar -zxvf <имя архива>
-использовать "./configure --help" - для определения опций скрипта.
И, наверное, корректнее будет написать "Установка программ из сырцов (rpm-пакетов,тарболов и т.д.)", а не "Установка пакетов из ..."
оффтопик: ruslandh, спасибо за соавторство.

-------
Патроны кончаются... Санитары близко... Всем пока


Отправлено: 19:52, 15-08-2002 | #8


Аватара для ruslandh

info man howto


Сообщения: 6958
Благодарности: 384

Профиль | Сайт | Отправить PM | Цитировать


1 Ребят, я как всегда на выходные уезжаю на дачу, поэтому следующий мой вариант будет на следующей неделе, а может есть смысл вместо просто замечаний просто недостающие части дописать
2 Насчет сорец/сырец - я не за один раз это все написал, пытался я везде писать сорец, но видно где-то проскочило.
3 Насчет тарбола - конечно надо более подробно расписать, только времени не хватило - может кто напишет свой вариант ?
4 Barracuda Похоже это ближе к Howto (КакОво), но разбивать на чистый FAQ - потеряется мысль изложения.


Вчера получил по мылу все Ваши замечания и ходил как дурак со счастливой улыбкой на лице
Большое спасибо всем за Ваши замечания

[s]Исправлено: ruslandh, 7:22 16-08-2002[/s]

-------
Поспешай не торопясь


Отправлено: 05:21, 16-08-2002 | #9


Unix-оид


Сообщения: 141
Благодарности: 0

Профиль | Отправить PM | Цитировать


Barracuda

если что, готов помочь.

-------
[b] Угадывай[b]


Отправлено: 11:01, 16-08-2002 | #10



Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Прочее - Linux-FAQ

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
ВОПРОСЫ и Ответы ДЛЯ FAQ по Linux (сам задал - сам ответил :) ) ruslandh Общий по Linux 5 04-09-2017 10:59
Linux-FAQ ruslandh Общий по Linux 33 27-08-2004 17:13
FAQ на ОСзоне (faq.oszone.net) ArtemD О сайте и форуме 6 08-02-2003 16:30




 
Переход