Установка slackware 14.2
Содержание:
Добавление мультибиблиотечности в Slackware x86_64
Это достигается следующим образом:
-
Сначала нужно переключиться на мультибиблиотечные версии
- glibc (такой glibc, который поддерживает исполнение как 32-ных, так и 64-битных бинарных файлов), и
- gcc (способный компилировать в 32-битные бинарные файлы наравне с 64-битными).
- Затем взять из 32-битной Slackware библиотеки и вместе с их 64-битными версиями установить их в 64-битной Slackware, что завершит процесс создания 32-битного программного слоя совместимости.
Когда вышла Slackware64, она имела преимущество перед прочими существовавшими 64-битными «форками». Последние добавляли 32-битный слой совместимости путём перекомпиляции множества своих пакетов как 32-битных бинарников. С другой стороны, Slackware — это дистрибутив, состоящий из 32-битного и 64-битного выпуска, разрабатываемых параллельно. Это означает, что вам не нужно компилировать 32-битные пакеты с нуля для добавления мультибиблиотечности в 64-битную систему. Можно просто взять их из дерева пакетов 32-битной Slackware!
Это было одной из причин не добавлять в Slackware64 полную мультибиблиотечность — мы создали необходимые условия, но если пользователю нужна мультибиблиотечность, то ему нужно действовать самостоятельно.
В разделе я объясню, как взять 32-битный пакет Slackware (скажем, пакет «mesa») и перепаковать его содержимое в пакет «mesa-compat32», который можно установить непосредственно в Slackware64.
Slackware для архитектуры x86_64 (или для краткости «Slackware64») является чистой 64-битной операционной системой, но легко обновляется до мультибииблиотечной. Изначально в Slackware64 возможно компилировать и исполнять только 64-битные бинарные файлы.
Start a Graphical Desktop Environment
Configure X If Required
# X -configure
to generate a basic configuration file in your current directory. This file can then be customized and placed in the directory. For a detailed overview of X configuration, check the manual page ().
Non-free Display Drivers
Many people use computers with a modern graphics card powered by a Nvidia or Ati GPU (graphics processing unit). The vendors of these high-performance graphics card offer non-free (proprietary binary-only) drivers for their cards. These binary-only drivers will boost your computer’s graphical and in particular OpenGL performance. If you own such a card you may want to read our Wiki article “Proprietary Graphics Drivers”.
Choosing a Desktop Environment/Window Manager
To choose the Window Manager or Desktop Environment you wish to use, run the utility:
$ xwmconfig
and select one of the available options. Note that you can run the command as the user which will set a global default for all users. By running the same command as your ordinary user account, you override that global default and pick your own.
After making your choice you can simply run
$ startx
Your preferred Desktop Environment or Window Manager will then start up.
Graphical Login
To start with a graphical login screen on boot instead of Slackware’s default console login, change the default runlevel to 4. Edit the file and change the line that looks like
id:3:initdefault:
to
id:4:initdefault:
Note the difference from other Linux distributions; many of those use runlevel 5 for their graphical login. In Slackware, runlevel 5 is identical to runlevel 3 (console boot).
In the graphical runlevel, you will be greeted by one of the available display (login session) managers. Slackware will by default look for the availability of GDM (Gnome Display Manager), KDM (KDE Display Manager) and XDM (X Display Manager) — in that order. You can also install a third-party login manager like SliM but you will have to edit and add a call to your new session manager all the way at the top.
Прочее
Почему Slackware так долго загружается?
По умолчанию Slackware устанавливает ядро , в которое встроена поддержка драйверов всех возможных устройств. Это может увеличить время загрузки, пока ядро определяет оборудование при запуске. Вы можете использовать ядро , используя инструкции из файла . См. также: .
Вы также можете отключить неиспользуемые сервисы в директории , сняв исполняемый бит со скриптов запуска. Например, для отключения демона Apache просто выполните (как root)
chmod -x rc.httpd
Если вы предпочитаете экранные меню для той же задачи, вы можете запустить (как root)
# pkgtool
Выберите пункт Setup и нажмите
Затем выберите пункт , пометьте его с помощью клавиши и нажмите
затем снимите отметку перед пунктом с помощью и нажмите .
Наконец, выберите и нажмите .
Также, если вы используете LILO, загрузчик Slackware по умолчанию, можно добавить опцию в для ускорения процесса загрузки путем объединения запросов чтения из соседних секторов:
# LILO configuration file # generated by 'liloconfig' # # Start LILO global section # Append any additional kernel parameters: append=" vt.default_utf8=1" boot = /dev/sda compact
Slackware при загрузке запускает много скриптов, относящихся к X/GTK, для уровней выполнения multiuser (, , , , , и пр.). Их можно отключить вручную, закомментировав сроки, относящиеся к ним, в файле , но ничего не отключайте, если только не абсолютно уверены в том, что делаете! Эти скрипты необходимы для приложений GTK для корректной отрисовки шрифтов и иконок.
Если только вы не продвинутый пользователь и знаете, что делаете, не пытайтесь модифицировать или отключать скрипты загрузки. Разве несколько лишних секунд, на которые ускорилась загрузка, действительно так важны?
У Slackware Linux репутация сложного дистрибутива для новичков. Это так?
Прочтите Особенности Slackware, чтобы лучше понять, чего стоит ожидать от такого дистрибутива как Slackware. Хотя Slackware определенно отличается от многих других дистрибутивов, просто или легко его использовать — решать каждому отдельному пользователю.
Однако стоит учитывать:
- В Slackware установщик, использующий текстовые меню (на ncurses) и требующий несколько технических решений при установке, некоторых из которых могут быть потенциально опасными для данных на жестком диске. Другими словами, если сомневаетесь, не выполняйте потенциально опасных действий и обязательно проконсультируйтесь с документацией.
- Свежеустановленная система Slackware изначально по умолчанию загружается в текстовую консоль и потом может быть , тогда как дистрибутивы, ориентированные на рабочие станции, по умолчанию сразу загружают графический экран входа.
- Базовые знания команд стандартной оболочки (bash) и текстовых редакторов, таких как vim, необходимы для комфортного начала работы со Slackware.
- Некоторые знания расположения часто используемых конфигурационных файлов и скриптов, используемых *nix-подобными системами, в значительной степени упростят жизнь.
История
Патрик Фолькердинг
Slackware был создан Патриком Фолькердингом (Patrick Volkerding) в конце 1992 года и впервые был представлен широкой общественности 17 июля 1993 года. Это был первый дистрибутив Linux, получивший широкое распространение. Фолькердинг был впервые начал изучать Linux, когда для проекта ему понадобился недорогой интерпретатор LISP. Одним из немногих дистрибутивов, доступных на тот момент, был SLS Linux от Soft Landing Systems. Фолькердинг использовал SLS Linux, исправляя в нём ошибки по мере их нахождения. В конечном итоге он решил объединить все исправления ошибок в свой собственный дистрибутив, чтобы его могли использовать он сам и его друзья. Этот персональный дистрибутив быстро получил большую популярность, поэтому Фолькердинг решил дать ему имя Slackware и сделал его доступным для широкой общественности. Со временем Патрик добавил в Slackware новые вещи: программу установки с дружественным интерфейсом, основанным на системе меню, а также понятие управления пакетами, которое позволяет пользователям легко выполнять в своей системе добавление, удаление или обновление пакетов с программным обеспечением.
Существует много причин, по которым Slackware является самым старым из существующих по сей день дистрибутивов Linux. Он не пытается эмулировать Windows, он старается быть похожим на Unix настолько, насколько это возможно. Он предоставляет пользователям полный контроль над системой, позволяя им непосредственно видеть, что происходит. Его разработка ведётся без установки граничной даты выпуска: каждая версия выходит тогда, когда она готова.
Гегемония Slack
В те времена Linux был все еще прерогативой образованных пользователей и странной помесью мятежной молодежи, технофриков и отчаявшихся хакеров, которые были привлечены идеями свободного ПО и возможностью разобрать свои компьютеры
Он также привлекал внимание академической среды и системных администраторов, искавших дешевую UNIX-подобную систему, которую можно было бы запустить на легкодоступном железе
И как раз здесь Slackware вступила в свои права. Первоначально Slack не был привлекающим к себе внимания Linux-ом, скачанный или приобретенный в Walnut Creek, установленный недовольными системными администраторами за спинами менеджеров. В начале-середине девяностых он был однозначно самой известной и популярной версией Linux среди компьютерных профессионалов и ботаников, способный держать печатные, файловые и веб-сервисы на бесчисленных множествах серверов, стоящих в укромных местах.
Гегемония Slack продержалась до конца девяностых, до того как его обогнали более коммерциализированные дистрибутивы того времени. Red Hat, SuSE и Mandrake Linux, который затем трансформировался в Mandriva. И хотя Slack исчез с радаров многих пользователей Linux, дистрибутив все еще жив и процветает в серверных и на рабочих станциях многих просвещенных пользователей Slack.
Фолькердинг все еще во многом занимается Slack в одиночку. У этого есть свои недостатки и преимущества. Пакеты обновляются только в том случае, если для повышения производительности требуется незначительная настройка, а такие, как например GNOME, были удалены, так как требуют слишком много конфигурации.
Другие основные дистрибутивы тратят тысячи часов улучшая и обновляя пакеты и функции. Необходимость гарантирует, что Фолькердинг работает с как можно большим количеством немодифицированных источников, а настройка Slackware минимальна, что приводит к тому, что Slack создает меньше проблем с поддержкой для мэйнтейнеров пакетов.
Пользователи Slack будут утверждать, что простота — это его собственная награда. Slackware минималистичен и прозрачен и работает так, как пользователь хочет, чтобы он работал, что с точки зрения пользователя Slack, так и должно быть.
Настройка
Прежде чем начать использовать slackpkg, ему нужен актуальный список пакетов и их версий, который может быть скачан автоматически самой утилитой после выбора зеркала. Для выбора зеркала раскомментируйте одну ссылку в файле
Обратите внимание, что ссылки отсортированы по релизам Slackware, чтобы удостовериться, что выбранная ссылка соответствует релизу, который вам нужен.
После этого выполните:
darkstar~# slackpkg update gpg
Следующий шаг — обновление списка пакетов:
darkstar~# slackpkg update
Если в списке не было изменений после последнего обновления, программа выведет на экран:
No changes in ChangeLog.txt between your last update and now. Do you really want to download all other files (y/N)?
В противном случае slackpkg скачает и установит актуальную информацию о пакетах и будет использовать полученный список.
Черный список
Slackpkg также учитывает выражения из . Например, следующие выражения указывают slackpkg игнорировать пакеты, установленные из SBo и репозитория alienBob’а:
+_SBo +alien
Управление программным обеспечением и пакетами
Как мне установить/обновить/удалить ПО в Slackware Linux?
Slackware Linux предоставляет собственные инструменты для управления пакетами, а именно , , и для установки, обновления и удаления программного обеспечения. используется для создания пакетов. Также просмотрите slackpkg и страницу про установку ПО.
Почему Slackware Linux не имеет моей любимой программы «XYZ» на своих CD/DVD?
Официальный дистрибутив достаточно мал по разным причинам, наиболее важная из которых заключается в ограниченном времени и ресурсах разработчиков. Короткий ответ в том, что официальный дистрибутив Slackware не может включать каждое возможное открытое ПО, которое могут потребовать пользователи. Однако Slackware уже предоставляет большое количество приложений, удовлетворяющих нуждам большинства пользователей.
Другие источники получения программ, отсутствующих на CD/DVD Slackware (в виде исходного кода или бинарном):
Заметьте, что лицензия некоторого ПО разрешает распространение только в виде исходного кода. Пожалуйста, не распространяйте и не выкладывайте в сеть любые бинарные пакеты с программами, собранными из исходного кода, если только не уверены, что их лицензия это позволяет. Также избегайте создания пакетов и распространения проприетарного ПО без разрешения его автора.
- Последнее, но не по значимости: средние и продвинутые пользователи обычно предпочитают собирать пакеты из исходного кода в апстриме или писать собственные SlackBuild’ы.
Почему пакетный менеджер Slackware не разрешает зависимости?
- Автоматическая работа с зависимостями требует постоянной ручной работы разработчика и добавляет потенциальный «ад зависимостей».
- Официальный дистрибутив Slackware все равно предполагает свою работу как самодостаточного целого. Таким образом, управление зависимостями по большей части спорно, так как полная установка дистрибутива (рекомендуемый способ) разрешает большую часть проблем с зависимостями.
- Несколько популярных приложений с открытым кодом могут быть скомпилированы с различными зависимостями, основываясь на параметрах сборочной конфигурации. Это делает обработку зависимостей сложнее и более подверженным ошибкам для распространения стороннего ПО в бинарном виде.
- Официальный дистрибутив Slackware Linux не имеет ни ресурсов, ни людей для работы над обработкой зависимостей стороннего ПО, что является сложной задачей, требующей много тестирования и подверженной ошибкам, как уже было сказано выше.
Дистрибутивы X и Y имеет пакетный менеджер, обрабатывающий зависимости, и…
Да, многие дистрибутивы имеют пакетные менеджеры, которые хорошо умеют обрабатывать зависимости. Действительно, в этом плане есть из чего выбрать. Сообществу Linux по-прежнему требуется стабильный, проверенный временем и протестированный дистрибутив, у которого этого нет. Slackware определенно заполняет эту нишу в сообществе Linux. Но, как всегда, у всех разные потребности, и многие пользователи Linux предпочитают голую простоту Slackware. Стоит учитывать, что простота в основе работы с пакетами в Slackware имеет одно большое преимущество: всегда будут сторонние улучшения и решения часто встречающихся проблем.
Некоторые называют это багом, другие — фичей. Так или иначе, Slackware остается верным своим основным принципам и эта тема — один из аспектов его основных принципов.
Релизы дистрибутива Slackware
Версия | Датарелиза | Ядро |
---|---|---|
1.00 | 17 июля 1993 | 0.99.11 Alpha |
1.1 | 05 ноября 1993 | 0.99.13 |
2.0 | 02 июля 1994 | 1.0.9 |
2.1 | 31 октября 1994 | 1.1.59 |
2.2 | 30 марта 1995 | 1.2.1 |
2.3 | 24 мая 1995 | 1.2.8 |
3.0 | 30 ноября 1995 | 1.2.13 |
3.1 | 03 июня 1996 | 2.0.0 |
3.2 | 17 февраля 1997 | 2.0.29 |
3.3 | 11 июня 1997 | 2.0.30 |
3.4 | 14 октября 1997 | 2.0.30 |
3.5 | 09 июня 1998 | 2.0.34 |
3.6 | 28 октября 1998 | 2.0.35 |
3.9 | 10 мая 1999 | 2.0.37pre10 |
4.0 | 17 мая 1999 | 2.2.6 |
7.0 | 25 октября 1999 | 2.2.13 |
7.1 | 22 июня 2000 | 2.2.16 |
8.0 | 01 июля 2001 | 2.2.19 |
8.1 | 18 июня 2002 | 2.4.18 |
9.0 | 19 марта 2003 | 2.4.20 (пропатчено до 2.4.21) |
9.1 | 26 сентября 2003 | 2.4.22 (пропатчено до 2.4.26) |
10.0 | 23 июня 2004 | 2.4.26 |
10.1 | 06 февраля 2005 | 2.4.29 |
10.2 | 14 сентября 2005 | 2.4.31 |
11.0 | 02 октября 2006 | 2.4.33.3 |
12.0 | 01 июля 2007 | 2.6.21.5 |
12.1 | 02 мая 2008 | 2.6.24.5 |
12.2 | 10 декабря 2008 | 2.6.27.7 (пропатчено до 2.6.27.31) |
13.0 | 27 августа 2009 | 2.6.29.6 |
13.1 | 24 мая 2010 | 2.6.33.4 |
13.37 | 28 апреля 2011 | 2.6.37.6 |
14.0 | 28 сентября 2012 | 3.2.29 (пропатчено до 3.2.98) |
14.1 | 07 ноября 2013 | 3.10.17 (пропатчено до 3.10.107) |
14.2 | 30 июня 2016 | 4.4.14 (пропатчено до 4.4.172) |
Creating an initrd
In case your kernel does not include the driver for your root filesystem, or a driver for your SATA bus, or other stuff that is only built as modules, your kernel will panic if it boots and can not access the necessary disks, partitions and/or files. Typically, this looks like
VFS: Cannot open root device "802" or unknown-block (8,2) Please append a correct "root=" boot option Kernel Panic-not syncing: VFS: unable to mount root fs on unknown block(8,2)
and this means you will have to build an initrd or “Initial Ram Disk” containing the required modules. The location of the initrd is then added in the appropriate section of so that the kernel can find it when it boots, and is able to load the drivers it needs to access your disks.
Creating an initrd is quite simple, and I will show two cases here, one in case you have a Reiser filesystem on your root partition, and the second for the case you have an ext3 filesystem. I assume a 2.6.37.6 kernel in these example commands, if your new kernel is different, change the version number as appropriate.
Change into the /boot directory: cd /boot
Run “mkinitrd” to create the /boot/initrd file containing a compressed filesystem with the modules you tell it to add on the commandline: mkinitrd -c -k 2.6.37.6 -m reiserfs
for a Reiser filesystem, or
mkinitrd -c -k 2.6.37.6 -m ext3
in case you installed an ext3 filesystem on your root partition..
Add the line “initrd = /boot/initrd.gz” to the newkernel’s section in the file /etc/lilo.conf, save your changes and then re-run lilo; I will use the lilo.conf example section I already used in a previous paragraph: image = /boot/vmlinuz-custom-2.6.37.6
root = /dev/sda1
initrd = /boot/initrd.gz
label = newkernel
read-only # Non-UMSDOS filesystems should be mounted read-only for checking
then run
lilo
On next boot, your new kernel will not panic.
-
If you are already using an initrd image with your current kernel, you can choose between two options:
-
Create a second initrd image using the command above but with an explicit name for the resulting initrd file (which should be different from the default in order not to overwrite the old one:
mkinitrd -c -k 2.6.37.6 -m ext3 -o /boot/initrd-custom-2.6.37.6.gz
and then change the section to look like this:
image = /boot/vmlinuz-custom-2.6.37.6 root = /dev/sda1 initrd = /boot/initrd-custom-2.6.37.6.gz label = newkernel read-only # Non-UMSDOS filesystems should be mounted read-only for checking
-
Add the kernel modules for your new kernel to the existing initrd file. That way, you have a single initrd image containing modules for multiple kernels. All you need to do is leave out the option “” which is the option to wipe the directory and start from scratch:
mkinitrd -k 2.6.37.6 -m ext3
-
Create a second initrd image using the command above but with an explicit name for the resulting initrd file (which should be different from the default in order not to overwrite the old one:
Принципы построения Slackware
Целями, положенными в основу построения этого дистрибутива, являются простота устройства и стабильность.
Не усложняй!
Принцип KISS (Keep it simple stupid, keep it short and simple — «оставь до тупости простым» или, по другой версии «делай короче и проще») — это относится к простоте построения системы, а не к простоте использования.
Стартовые скрипты
Slackware использует стартовые скрипты стиля BSD, в то время как большинство других дистрибутивов использует стиль System V. Основное различие между двумя типами скриптов состоит в том, что System V выделяет один каталог для скриптов управления сервисами, и несколько (для каждого уровня выполнения) отдельных каталогов, содержащих ссылки на эти скрипты. Имена скриптов обычно соответствуют именам сервисов. Имена ссылок из каталогов, соответствующих уровням выполнения, содержат (помимо имени сервиса), также и букву, обозначающую необходимое для выполнения действие — запуск или остановку. BSD тип скриптов предусматривает только один скрипт — общий для всех уровней выполнения; внутри этого скрипта запускаются все необходимые для конкретного уровня сервисы.
В современной реализации Slackware Linux стартовые скрипты для каждого уровня выполнения размещаются в отдельных файлах. Например, уровню выполнения 4 соответствует стартовый скрипт rc.4, а уровню выполнения 0 — rc.0. Кроме того, появилось большое количество скриптов, предназначенных для запуска конкретных сервисов. Например, для запуска почтового сервера Sendmail используется стартовый скрипт rc.sendmail, DNS сервера BIND — rc.bind и т. д.
Управление пакетами
Система управления пакетами в Slackware позволяет пользователю устанавливать, обновлять или удалять пакеты так же легко, как и аналогичные системы других дистрибутивов, но, в отличие от последних, по умолчанию не отслеживает зависимости между пакетами, хотя такая возможность разработчикам пакетов предоставлена.
Файлы пакетов представляют собой архивы, сделанные с помощью программы и сжатые затем с помощью программы или . Обычное расширение для файлов пакетов — или (для версий 13.0 и выше).
Для простого и быстрого обновления Вашего Slackware:
Рекомендуется отключить обновление компонентов ядра и самого ядра:
Поправьте в консоли с помощью # nano /etc/slackpkg/blacklist выключив нужное (поставив перед именем группы пакета ‘#’ ).
Поправьте в консоли с помощью # nano /etc/slackpkg/mirrors включив нужное Вам зеркало пакетов (например mirror.yandex.ru).
slackpkg update
slackpkg update gpg
slackpkg install-new
slackpkg upgrade-all
lilo
Вы обновились !
Программы управления пакетами Slackware находятся в пакете pkgtools используются для индивидуальной установки пакетов.
Существует также несколько «надстроек», позволяющих автоматизировать процесс обновления системы и зависимости пакетов, таких как:
- slapt-get
- slackpkg
Эти пакеты не входят в стандартный набор, но доступны в /extra.
С выходом Slackware 12.2 пакет slackpkg вошёл в дерево /main.
Full system upgrade
To perform a full system upgrade, please follow these steps (as root user):
slackpkg update slackpkg install-new slackpkg upgrade-all slackpkg clean-system
It is always recommended to read the latest ChangeLogs and (found on the HTTP/FTP mirrors for each version) before doing any major system upgrades.
There’s a separate article dedicated to doing a full system upgrade which you should definitely read first.
Pay attention to changed configuration files. Update them either by merging your customizations from the older configuration files (Slackpkg can optionally step through every changed configuration file and allow you to resolve the changes) or manually editing the new files after allowing Slackpkg to overwrite the old configuration files. You decide which way works best for you.
Configuring
Before slackpkg can be used it needs to have a current list of packages and their versions and that can be downloaded automatically by the tool itself once a mirror site is selected. To select a mirror, just uncomment a single URL in the file . Note that the links are sorted by Slackware release versions so make sure that the selected link is in the same release that you are interested in. It is recommended, though not required, that you use the mirror, as that one will automatically redirect you to your geographically closest mirror.
Then run:
darkstar~# slackpkg update gpg
The next step would be to update the package list with:
darkstar~# slackpkg update
If there hasn’t been a change to the list, you will be prompted with:
No changes in ChangeLog.txt between your last update and now. Do you really want to download all other files (y/N)?
Otherwise slackpkg will download and install the current package information and will use that list.
Blacklisting
slackpage will take into consideration any pattern from . For example the following patterns will make slackpkg disregard any package that was installed from SBo and from alienBob’s repository:
+_SBo +alien