зависимости, установщики и тп

spk

Пользователь
Объясните простому юзеру пару моментов:
1. Почему весь софт для линукс можно найти в rpm/deb и т.п. пакетах? мне лично намного проще установить программу при помощи инсталлятора.
а так ставишь - еще кучу зависимостей удовлетворить надо (т.е. скачать с инета). Очень неудобно с моей точки зрения (с точки зрения форточника)
2. Почему необходимые библиотеки не включаются в вышеупомянутые пакеты как это делается в установщиках win? Ну я понимаю - в америке инет бесплатный, но у нас то нет..
3. С исходниками вроде понятно все (в плане "зачем"), но как правило те же проблемы с зависимостями и тп.
4. *nix системы имеют дружественный интерфейс, но друзей себе они выбирают долго и тщательно.. а существует ли достойно русифицированная ось?
 

Mike22

Местный
1. "Инсталлятор" в Линуксе - это отдельная программа (которую называют "менеджер пакетов"), которая работает с файлами пакетов (например rpm/deb) и занимается их установкой/удалением/обновлением/проверкой целостности и т.п.
Чёткое разделение функций и единые форматы файлов в которых распространяется софт (для того или иного дистрибутива) позволяют организовать автоматическое обновление системы и поддерживать её всегда в актуальном состоянии.
Включение программы-инсталятора в каждый пакет ведёт только к увеличению общего объёма загрузки обновлений.
Существует софт который распространяется в виде исполняемого файла и включает в себя собственный инсталятор, но обычно это закрытое ПО.

Зависимости - есть такое понятие "linuxway", оно означает что программа/библиотека/компонент должны выполнять только одну задачу/функцию, но делать это предельно эффективно. Из таких эффективных "кирпичиков" и состоит Линукс.
Например, все программы пользуются библиотекой glibc, но это же не повод включать эту библиотеку в состав пакета каждой программы, glibc сама по себе отдельный пакет и её можно обновить отдельно и таким образом ваш софт получит новый/улучшенный функционал.
Размеры файлов пакетов софта для открытых систем редко превышают 1-3 мегабайта (сравните с размерами дистрибутивов софта для Windows), но имеют зависимости от дополнительных компонентов.

2. Я ответил выше. Разделение компонентов ведёт к экономии объёма, трафика и лучшей управляемости системой, а не наоборот.

3. Современные менеджеры пакетов берут все проблемы с зависимостями на себя. Никаких тут сложностей нет.
Иногда проблемы бывают, но все они обычно связаны с тем, когда в систему устанавливается новая сборка программы от другого "сборщика" (майнтейнера) без предварительного удаления старой версии. Тут и правда возможны некоторые конфликты о которых вам менеджер пакетов сообщит. Но всё решается предварительным удалением старой/другой версии программы.

4. Все современные крупные дистрибутивы русифицированы сразу и из коробки. Какой-то из них в большей степени, какой-то в меньшей, но не менее 70%-80% интерфейса всех дистрибутивов имеют полную русификацию.
Отдельные компоненты (кирпичики) могут не иметь русификации, но таких не очень много.
Кстати, вы можете сами принять участие в русификации как дистрибутивов, так и любого проекта открытого ПО. На то они и являются открытыми.

Я понятно объяснил? Или ещё неясности остаются? Спрашивайте!
 

vav

Moderator
Дополню. Пакетный менеджер -- это как раз то, что в линуксе отличается от виндовса в сильно лучшую сторону.

Берем, тыкаем пальцом в любой файл из системной директории в федоре, например, /usr/sbin/lvm.
Из какого пакета этот файл? Что этот пакет делает? Есть ли в пакете мануалы? Есть ли версия новее?
Код:
rpm -qf /usr/sbin/lvm
rpm -qi `rpm -qf /usr/sbin/lvm`
И так далее.
Плюс еще куча мелочей, типа контрольной суммы для каждого файла.

А в виндовсе? Заходим в папку c:\windows\system32 . Беремся за голову руками, и говорим: ".......".
Бессистемный бардак, ибо каждый первый инсталлятор туда что-нибудь положит, а каждый второй -- забудет убрать.
 

spk

Пользователь
1. "Инсталлятор" в Линуксе - это отдельная программа (которую называют "менеджер пакетов")
Зависимости - есть такое понятие "linuxway", оно означает что программа/библиотека/компонент должны выполнять только одну задачу/функцию, но делать это предельно эффективно. Из таких эффективных "кирпичиков" и состоит Линукс.
Например, все программы пользуются библиотекой glibc, но это же не повод включать эту библиотеку в состав пакета каждой программы

2. Я ответил выше. Разделение компонентов ведёт к экономии объёма, трафика и лучшей управляемости системой, а не наоборот.

3. Современные менеджеры пакетов берут все проблемы с зависимостями на себя. Никаких тут сложностей нет.


Я понятно объяснил? Или ещё неясности остаются? Спрашивайте!
Объяснил понятно.
1. я думаю, что наиболее часто используемые модули включаются (или должны включаться) в ОС. В том то и проблема, что почти для каждого приложения приходится скачивать свои библиотеки :rolleyes:
но ведь я скачиваю, допустим, софт для мандривы 2008. наверняка разработчики знают какие пакеты включены в состав диска с ОС а какие надо бы включить в дистриб программы.
2. форточки я ставлю и софт к ним вообще ничего не скачивая. у меня есть готовый набор софта. как разделение компонентов ведет к лучшей управляемости системой, если этот компонент чтобы поставить (простите) - трахаюсь все время ;)
3. это как? да, они говорят мне: Скачай ка с инета библиотеку lib.so.1.8, а то что в системном каталоге стоит lib.so.1.9 это не катит..
я понимаю что дистрибутивов линукс много, но почему они не могут определиться и сделать какойнть стандартный набор часто используемых библиотек. а остальные включать в дистри операционки?
 

spk

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

Mike22

Местный
1. Практически все стандартные библиотеки и так входят в дистрибутивы. Но они не все подряд устанавливаются по умолчанию.
Ваш менеджер пакетов просто не знает, есть у вас диск дистрибутива системы или нет, он опирается только на те репозитарии, которые в нём настроены.
Подключите репозитарий со сменного диска и не забывайте сам диск вставлять при запуске менеджера пакетов или скопируйте дистрибутив системы на HDD, тогда часть зависимостей будут локально удовлетворяться.
С другой стороны, компоненты обновляются, и менеджер пакетов всегда предложит установить более новую версию.

2. Я же объяснил вроде.
В мире Win принято всё носить с собой и Microsoft диктует, что и как ставить, в Линуксе каждый компонент независим и самодостаточен, невозможно заранее предсказать конфигурацию системы пользователя и необходимость той или иной библиотеки, поэтому монолитные сборки бессмысленны.
Тут ещё много что сказать можно, но -
Почитайте про linuxway - я не зря этот термин привёл.

3. С Мандривой завязывайте. :rolleyes:
Проблем не станет таких. Или изучайте (эту странную) систему более глубоко, следите и качайте все её обновления.
 

Loki

Пользователь
В принципе если для Linux есть толстенький канал в интернет, и желательно халявистого типа, то проблем с освоением, установкой ПО и др быть не должно. Репозитарии рулят. :rolleyes:
 

Mike22

Местный
имхо, если б линукс-сообщество об удобстве пользователей бы побеспокоилось, возможно даже в ущерб некоторым принципам (типа траффика обновлений), поклонников линукса было бы намного больше..линукс система для программистов на данный момент
Они (мы) беспокоятся. Иначе не было бы и разговора про Линукс-десктоп.
Просто Линукс, он другой, принципы лежащие в основе системы координально от Win отличаются и пользователю нужно потратить немного сил на освоение этих принципов и правил.
Гибкость и эффективность всегда будут на первом месте, в отличие от Win и большинства коммерческого софта, где на первом месте как правило развод пользователей и прибыль, а эффективность на десятом.
 

koala

Уже освоился
3. С Мандривой завязывайте. :rolleyes:
Проблем не станет таких. Или изучайте (эту странную) систему более глубоко, следите и качайте все её обновления.

Зря вы так, я пользуюсь Мандривой, до этого пользовался Федорой. Для меня с Мандривой проблем гораздо меньше и настройки гораздо удобнее (пользователь я не очень опытный, систему знаю весьма поверхностно). Например есть элемент меню "Configure your computer" в котором, в частности, есть удобный менеджер пакетов. А в дистрибутив Федоры почему то разработчики не включили очень удобный менеджер пакетов smart.
 

Mike22

Местный
Зря вы так, я пользуюсь Мандривой, до этого пользовался Федорой. Для меня с Мандривой проблем гораздо меньше и настройки гораздо удобнее (пользователь я не очень опытный, систему знаю весьма поверхностно).
Да, согласен.
По части удобства для человека не желающего вдаваться, Мандрива может быть удобнее Федоры.
Но она жуть какая странная, Мандрива. :rolleyes:
Ошибки в Мандриве по нескольку лет не исправляются некоторые.
Мне она (компания Мандрива) напоминает microsoft в её худших проявлениях. Типа - это не ошибки, это особенности.
Если вы не готовы углубляться, попробуйте Убунту или OpenSUSE - вам понравится, и глюков меньше будет, поверьте.
У меня лежит OpenSUSE 10.3 DVD x32 версия, надо наверное на ftp выложить её.

Держать у себя зеркала Мандривы я точно не буду, мне она совершенно неинтересна, я скорее на OpenSUSE соглашусь чем на Мандриву. ;)

Например есть элемент меню "Configure your computer" в котором, в частности, есть удобный менеджер пакетов. А в дистрибутив Федоры почему то разработчики не включили очень удобный менеджер пакетов smart.
smart входит в дистрибутив Fedora, но он отсутствует на установочном DVD-диске и может быть загружен с репозитария (официального или локального, который я пытаюсь поддерживать).
Я напомню, что полный дистрибутив Fedora - это более 12 ГБайт, а на установочном DVD только треть системы. (я про это уже рассказывал и объяснял)
 
Сверху