Линукс - курс молодого бойца: различия между версиями

Содержимое удалено Содержимое добавлено
Откат моих правок: Об операционных системах. О менеджерах пакетов
Строка 4:
Целью данного текста будет объяснить человеку, решившемуся поставить Linux, что же собственно для этого нужно делать, как эта штука работает, почему именно так, а не иначе и как с этим жить дальше.
 
==== Что такое дистрибутив ====
== Вступление. Linux и ОС ==
 
=== Операционные системы ===
 
==== Об операционных системах ====
Операционная система - это комплекс программ которые, связывают все устройства компьютера и позволяет взаимодействовать им(программам) с обычными программами и пользователем.
 
На сегодняшний день существует достаточно много операционных систем как для компьютеров, так и для телефонов. Но если взглянуть на современный рынок, то можно заметить, что всего 5-7 ОС доминируют им: Windows(95%+), Mac OS(4%+), Linux(1+%) на пользовательских компьютерах, Android, iOS(статистика для них разнится) для телефонов и Linux, BSD, Windows - для серверов.
 
И если на телефонах и серверах Linux занимает доминирующее положение(Android - модифицированный Linux от Google), то почему персональных компьютерах Линукс не столь популярен? Думаю, на это хорошо ответил Линус Торвальдс.
 
Ну и конечно же главный вопрос: а зачем мне Linux на десктопе? У GNU/Linux(это правильное написание названия ОС и чуть позже расскажем почему) есть ряд преимуществ, в отличии от Windows и MacOS(если мы говорим о персональных компьютерах):
 
* Модифицируемость: GNU/Linux создан для того, чтобы его модифицировали - в нем можно заменить множество компонентов системы, и сделать оптимальную, для своих целей, систему. Именно этим объясняется множество различных дистрибутивов, графических оболочек, систем инициализации и т.д.
* Свободный. GNU/Linux придерживается идеологии Open Source, где каждый может модифицировать все, как он только пожелает и при этом делиться этими модификациями, а также использоваться модификациями, изготовленными другими. Над многими проектами трудятся сотни и тысячи человек, чтобы сделать их лучше. Идеология близка к идеологии проектов Викимедиа.
* Бесплатный. Множество(но не все) дистрибутивы GNU/Linux являются бесплатными, в отличии от Windows(на 2021 год - 200$) и Mac OS.
* Безопасный. Из-за малой распространности, постоянных обновлений, а также бесплатности(из-за чего нет пиратства) Linux является достаточно безопасным.
*Сообщество. Отличительная особенность сообщества GNU/Linux - его тесная связь. Сообщения о багах в Linux действительно имеет смысл, с разработчиком можно связаться, можно легко начать совместно разрабатывать программы, дистрибутивы, и т.д. Можно сказать, что существует огромная экосистема включающая в себя разработчиков GNU/Linux, дистрибутивов и программ, Вики-сообщство(участников проектов Викимедиа), пользователей(ОС) и читателей.
 
==== Что такое дистрибутив ====
[[Файл:Linux Distribution Timeline Dec. 2020.svg|мини|Дистрибутивы Linux на 2020 год]]
 
Строка 47 ⟶ 28 :
* http://www.distrowatch.com
 
=== Философия UNIX ===
* Принцип KISS – Keep It Simple Stupid. Один из основополагающих принципов, который гласит, что система и любая программа в ней должны состоять из максимально простых и понятных небольших блоков. Если какой-то из компонентов системы или какая-то из подпрограмм в программе становится слишком сложной, их необходимо разбить на более мелкие части. Должно быть предельно ясно, что каждый блок делает с одного взгляда на него, что экономит время на документирование. Впрочем, каждый такой стандартный блок должен быть документирован man-страницей, составленной по стандартному образцу. Сложность доведения до ума и дальнейшей разработки целого ряда переданных сообществу opensource коммерческих проектов, таких как OpenOffice и Mozilla, не исповедовавших этот принцип, подтверждают его несомненную важность для мира unix. Практически все удачные opensource-решения, завоевавшие популярность, построены в соответствии с ним, что позволяет принимать участие в их разработке не слишком опытным программистам, но при этом поддерживать общее качество кода на высоком уровне.
 
Строка 111 ⟶ 92 :
===графическая оболочка===
==Особенности Linux==
===Пактеные менеджеры, репозитории===
Значительная часть программ в Linux устанавливается из различных репозиториев. Репозитории - место, где хранятся файлы, поддерживаемые разработчиками. Установка производится либо через пакетный менеджер(GUI), либо же через менеджеры:
 
# apt(Debian-производные)
# yum(RedHat-производные)
# zypper(OpenSUSE)
# pacman(Arch-производные).
 
Конечно появляется вопрос: а могу ли я установить что-либо в Ubuntu используя pacman(из Arch)? Вероятно, нет. На разработчиков ложится дополнительная нагрузка по упаковке программ для apt,yum и т.д. Данную проблемы призваны решить snap, flatpak и AppImage(аналог portable-программ для Windows). Все они доступны для установки в любой дистрибутив.
 
Часто бывает так, что разработчик на сайте выпускает новые обновления для программы, но в наших менеджерах(apt,yum,pacman,zypper) остаются старые версии этой же программы. Причина в том, что в репозитории добавляют только проверенные програмы, а на это требуется время. Часто разработчики создают свои репозитории(которые мы можем подключить): на момент написания, LibreOffice в apt находится в версии 5, а в репозитории разработчика - 7.
 
Более сложной оказывается установка программ из tar-архивов("тарболов"). Чаще всего там будет находится скрипт Bash с названием install.sh, который мы должны запустить, чтобы установить программы.
 
=== Структура файловой системы ===
В файловой системе в Linux все начинается с "корня" - /. В отличии от Windows, в Linux организация файловой системы выглядит как "дерево": от корня / идет в другие папки(/etc, /lib,/usr,/bin) или даже разделы - /home,/boot(если вы их сделали разделами при установке). Можно было бы провести аналогию с Windows: