Ленивый линукс — история Slackware
Наверняка вы слышали о таком дистрибутиве Linux, как Slackware. Довольно непопулярная и колоритная ОС, одновременно один из самых старейших и ныне живущих дистрибутивов Linux.
В современную эпоху Slackware можно считать пережитком прошлого.
Старый король, возможно и отрекся от престола, но угли его славы все еще тлеют.
Slackware является линуксом не для всех.
Это один из тех линуксов, которым пугают молодых линуксоидов и виндо-юзеров.
В этой статье мы обозрим историю создания Slackware и биографию Патрика Фолькердинга — создателя этого замечательного дистрибутива.
Для начала давайте проведу краткий экскурс в историю Unix и Linux.
История Linux
Еще в далеких 1970 линукс только начал зарождаться. Неким рождением Unix и Linux принято считать появление на свет ОС Unix в американской компании Bell Laboratories, которая являлась дочкой AT&T.
Unix стал популярен среди ОС для серверов, промышленного класса. Ведь он был разработан специально для этого. Разработана Unix была для микрокомпьютеров PDP-7. Основной вклад внёс Кен Томпсон при значительном участии Денниса Ритчи (создателя языка C) и Дугласа Макилроя.
Linux обязан жизнью двум проектам — GNU и Minix. Создателем GNU является Ричард Столлман. Он был борцом за свободу, и протестовал против проприетарной лицензии Unix. Работая в MIT, он смог создать GCC — GNU Compiler Collection, и начал работать над операционной системой GNU (GNU not Unix).
Практически вся ОС была создана, но не хватало главного компонента — ядра. И тогда Столлман обратился к финскому студенту Линусу Торвальдсу.
Линус Торвальдс вообще происходил из шведскоговорящего меньшинства в Финляндии. Его родители были журналистами, причем с коммунистическими взглядами. Он, вдохновленный проектом Minix, создал ОС Freax, но в дальнейшем название было изменено на гибрид имени Линус и Unix. Эмблемой Linux стал пингвин Tux (такс, тукс), нарисованный программистом и дизайнером Ларри Юингом в 1996 году.
О Всемогущем Патрике
История Патрика — создателя Slackware, да и самого Slackware, началась в 1973 году. Будучи ребенком, Патрик, попадает на экскурсию в компьютерный департамент North Dakota State University.
Комната, где они держали машины тотально поразила меня — множество больших шумящих машин с мерцающими огоньками повсюду. И ряды больших приводов с дисковыми пластинами. Один из системных операторов показал мне, как играть в StarTrek на Dec Writer — телетайпо-подобном терминале. Это была мгновенная зависимость© Патрик Фолькердинг
Интерес интересом, а зависимость зависимостью — все мы знаем размер компьютеров в те года. Многие корпорации не могли себе позволить такую роскошь, ее ведь еще и обслуживать. А что там говорить о детях и их родителях.
Патрик, несмотря на проблемы, не бросил интересоваться компьютерной техникой. Он стал заниматься электроникой — намного дешевой, но не менее интересной “зависимостью”.
После релиза и появлении в продаже первых ПК, таких как Apple II или TRS-80, компьютерные магазины стали вторым домом Патрика. Владельцы некоторых магазинов даже разрешали здесь ему гулять и пользоваться машинами, в обмен на маленькие программы с рекламой магазина, которые Патрик писал, когда изучал BASIC.В возрасте 14 лет Патрик обзавелся наконец-таки личным ПК. Это был Apple II Plus с 300 бодовым модемом AppleCat. На нем была установлена одна из unix-подобных систем (нет, не Linux).
Эта машина отслужила свой срок в 1990 году.
А в 1992 году Патрик услышал о Linux от своего друга на вечеринке в Северной Дакоте. Спустя время он забыл про него (не про друга, а про линукс), и снова вспомнил когда искал LISP-интерпретатор, и тогда он скачал дистрибутив SLS.
За несколько недель в установленной ОС была изменено многое и установлены нужные программы. Как и у любого человека, у Патрика возникло желание автоматизировать процесс установки нужного ему конфига на ПК. Патрик озарился идеей, и начал свой проект.
Патрик исправил установочные скрипты SLS, устранил баги, добавил автоматическую установку общих библиотек и образа ядра. Отредактировал файлы описаний, прошелся по всем пакетам, исправил баги, портировал новые версии. При старте работы дистрибутив был еще просто хак-версией SLS, имел ядро 0.99pl9. К тому времени Патрик обогнал оригинальный дистрибутив в половине пакетов, и сделал множество исправлений во второй. Сборка SLS от Патрика уже переставала быть похожа на обычный SLS.В мае-июне 1993 года после добавления в уже собственный дистрибутив библиотек C 4.4.1 и ядра 0.99pl11A система стала стабильнее и лучше. Друзя из Minnesota State University уговаривали Патрика выложить дистрибутив на FTP-сервер, но думая что скоро выйдет новая версия SLS, Патрик ждал. Но новая версия не выходила довольно долго, так что Патрик создал анонимный FTP и выложил архив со своей системой. После этого первая версия дистрибутива — Slackware 1.0 вышла в сеть. К сожалению, она была доступно недолго, ведь сервер загнулся. Тогда Патрику предложили место на ftp.cdrom.com.Спустя некоторое время, создатель SLS — Питер МакДональд потребовал дистрибутивных прав на установочные скрипты, взятые из SLS, вместо того чтобы исправить их. Патрик не стал ссориться, и переписал эти скрипты для Slackware.Патрик уже тогда понял — сдаваться он не собирается.Название Slackware вообще предложил друг Патрика J.R. “Bob” Dobbs. Slack — означает ленивый, нерадивый. Многие говорили, что название несет негативные аннотации, но Патрику Фолькердингу название понравилось, и оно осталось.
Итак, спустя некоторое время SLS умер. Сразу же после своего появления, Slackware стал распространяться не только в обычных сетевых каналов, но также стала расходиться на CD-дисках.
Именно со Slackware началась и история Linux-дистрибуции в организационном, так сказать, аспекте. Сразу же после своего появления Slackware, помимо обычных сетевых каналов, начала распространяться на CD известной медиа-фирмой Walnut Creek.
Slackware в своём внутреннем устройстве унаследовала первозданную простоту SLS. И не только унаследовала – именно простоту Патрик возвёл в основополагающий принцип построения системы. Реализация его выразилась в сохранении BSD-стиля инициализации, простого формата пакетов, и «идеологически обусловленного» отказа от контроля их зависимостей.
Создававшиеся чуть позже (но в масштабах эпохи – практически одновременно) дистрибутивы Debian и Red Hat пошли по прямо противоположному пути: всё более усложняющаяся со временем схема инициализации в стиле System V, включение максимально большого количества метаинформации в структуру пакетов и все более изощрённые формы контроля их зависимостей.
30 лет назад Патрик Фолькердинг (Patrick Volkerding) представил первый релиз дистрибутива Slackware Linux, оказавшего влияние на многие проекты и являющегося старейшим из ныне существующих дистрибутивов. Наиболее известным ответвлением от Slackware является SUSE Linux. Из продолжающих развитие модификаций Slackware можно отметить Salix, Slax, Slackel, Porteus, Zenwalk, Slackware Live Edition и Absolute Linux.
Первый выпуск Slackware был основан на ядре Linux 0.99pl10 и собран с использованием gcc 2.4.5. Графическое окружение было построено с использованием XFree-86 1.3 и оконного менеджера Open Look. Расцвет Slackware пришёлся на 1994-96 годы, в которые дистрибутив занимал лидирующие позиции среди других систем. Например, Slackware стал первым дистрибутивом, выпустившим релизы на основе ядра Linux 1.0 и 2.0 (Debian Buzz с ядром 2.0 вышел на несколько недель позже, а Red Hat 4.0 отстал на несколько месяцев). В последующем такие проекты, как Debian, Red Hat и SUSE, вытеснили Slackware, но вопреки многочисленным прогнозам о скором забвении проекта, дистрибутив по-прежнему жив и обновляется.
Основной причиной долгой жизни дистрибутива является неиссякаемый энтузиазм Патрика Фолькердинга, который спустя 30 лет по-прежнему остаётся лидером и основным разработчиком проекта. Кроме того, несмотря на солидный возраст, дистрибутив смог сохранить самобытность и простоту в организации работы. Отсутствие усложнений и простая система инициализации в стиле классических систем BSD делают дистрибутив интересным решением для изучения работы Unix-подобных систем, проведения экспериментов и знакомства с Linux.
Новшествами Slackware были:
- собственная программа инсталляции – меню-ориентированная, работающая в псевдографическом режиме, похожая по виду и родственная по духу создававшейся в то же самое время утилите sysinstall из FreeBSD;
- выделение категорий пакетов – базовой системы (A), консольных приложений (AP), средств разработки (D), оконной системы X и ее приложений (X и XAP, соответственно), и так далее;
- набор утилит для управления индивидуальными пакетами, не предусматривающего, однако, никакого контроля зависимостей.
Время показало провиденциализм подхода Патрика – Slackware живёт и развивается вот уже 15 лет, не поступаясь своими принципами, сохраняя редкую по нынешним временам компактность, лишь обновляя версии ядра, компоненты базовой системы и приложений. Сохраняется и устойчивый круг пользователей этого дистрибутива.
Исходный «примитивизм» формата пакетов Slackware не мешает использовать в этом дистрибутиве весьма развитые средства пакетного менеджмента, обеспечивающие учёт и автоматическое разрешение зависимостей. Поскольку внутри самих пакетов никакой метаинформации не содержится, для хранения её можно использовать любую внешнюю базу.
Этой особенностью формата пакетов Slackware активно пользуются все, у кого возникает к тому желание или необходимость, приспосабливая к ней любые системы управления пакетами. Так, мне доводилось слышать об удачных попытках применения в Slackware системы портов, которая была взята из FreeBSD. Для Slackware поддерживается система pkgsrc – портообразная система, разработанная первоначально для NetBSD. На базе синтеза Slackware и pkgsrc активно развивается несколько дистрибутивов, например, Voltalinux и Draco GNU/Linux.
Механизм apt-get, обеспечивший славу Debian, а в дальнейшем немало способствовавший и популярности семейства Ubuntu, также был адаптирован для использования в Slackware: здесь он получил название slapt-get. На основе синтеза Slackware и пакетного менеджера pacman, происходящего из Archlinux (кстати, во многом – идейного наследника Slackware), возник дистрибутив Frugalware.
Разработан был для Slackware и собственный менеджер пакетов, swaret. Однако в штатный комплект дистрибутива он, вследствие заветов Патрика, так и не вошёл. Потому что для собственно Slackware в качестве основных средств управления пакетами Патрик по прежнему признает только два: установку официальных бинарников с помощью штатных утилит, при ручном разрешении зависимостей, и компиляцию из исходников – в случае, если нужных пакетов нет в репозитории или их официальная сборка по тем или иным причинам не удовлетворяет пользователя. Всё остальное – от глюкавого. То есть дистрибутив этот должен рассматриваться не столько как законченная система, сколько как каркас для конструирования системы собственной.
Интересный факт — SUSE Linux был немецким переводом Slackware Linux
Debian был основан на SlackwareИстории о том, как в первые дни существования GNU/Linux шли разговоры о слиянии Debian и Slackware, ходили всегда, но я никогда не знал, что Debian изначально был основан на Slackware.
Сам этот человек, Патрик Фолькердинг, поделился следующим фрагментом истории вычислений на LinuxQuestions.org еще в 2017 году, когда ответил на сообщение о том, что Debian никогда не был основан на Slackware:
Согласно тому, что Ян рассказал мне по телефону в 1993 году, это было когда-то еще до того, как оно было выпущено, чего бы это ни стоило.
- Патрик Фолькердинг
Для тех, кто не знаком с историей Debian, «Иан» относится к покойному Яну Мердоку, основателю проекта Debian. Увы, Patian GNU/Linux так и не появился, и Debian сосредоточился на завоевании доли рынка за счет Slackware Linux.
Ретро-сайт
Slackware.com не подвергался редизайну с 1999 года, и, насколько я понял, серверная часть также практически не изменилась. Однако пользователи Slackware не возражают, видя, как классический дизайн HTML-таблиц легко работает в терминале с lynx. Кому нужен адаптивный дизайн, оптимизированный для мобильных устройств в 2023 году, я прав?
Честно говоря, были инициативы предоставить Фолькердингу новый веб-сайт для slackware.com, но по какой-то причине он решил остаться на старом сайте.
И если говорить о старых фактах, то слухи говорят что на сервере, на котором размещен slackware.com, работает Slackware 12.0.
Заключение
Slackware — прекрасный колоритный дистрибутив Linux. Не для всех, с глубокой и интересной историей.
Больше интересного вы можете увидеть на моем телеграм-канале.