0: Всех приветствую на курсе по linux в данном уроке мы будем разбираться с тем, что же такое пакетные менеджеры, для чего они нужны, какие они бывают, также мы посмотрим на различные дистрибутивы.
1: Разберёмся, чем они отличаются. И вообще, от чего возникает эта разница. Что ж, поехали, начнём с пакетных менеджеров. Вообще, что такое пакетный менеджер? Ну, как можно догадаться из названия?
2: Это что-то, что менеджит пакеты в нашей системе, да, вообще, что такое пакеты? Что значит менеджить пакеты? Это файлы или наборы файлов, необходимые для
3: Установки программного обеспечения, ну или, грубо говоря, само программное обеспечение. То есть, чтобы что-то установить, нам нужно скачать пакеты. Сделать это мы можем при помощи пакетного менеджера, да?
4: То есть пакетный менеджер это программа, которая менеджит, то есть позволяет нам устанавливать, апдейтить, то есть обновлять пакеты, удалять, вводить по ним какую-то информацию.
5: Это история про пакетные менеджеры. Итак, мы знаем, что такое пакетные менеджеры. Мы знаем, что такое пакеты. Возникает вопрос, откуда мы будем скачивать эти пакеты? Как можно догадаться, они находятся в интернете.
6: А именно если быть конкретным, в репозиториях так называемых репозитории из себя представляют некоторый удалённый сервер.
7: Где расположены, соответственно, эти пакеты, то есть они там хранятся на дисках. И мы, чтобы скачать эти пакеты, отправляем запросы на эти сервера по протоколу http и таким образом скачиваем эти пакеты.
8: Устанавливаем, устанавливаем их себе, какие бывают репозитории. Репозитории. Бывают официальные и неофициальные, как можно догадаться, официальные репозитории это те, на которых
9: Можно найти самые базовые и часто используемые пакеты специально для нашей, для нашего дистрибутива, для нашей системы, если мы хотим скачать какие-то более специализи,
10: Пакеты, например, для разработки на python там или на javascript, то для таких пакетов есть свои специализированные репозитории, они как бы
11: И называются сторонними.
12: Также стоит упомянуть, что помимо самих пакетов репозиторий содержат ещё некоторую метаинформацию о том, какие версии пакетов есть и также их зависим.
13: То есть представим, чтобы нам установить какой-то язык программирования, а именно его интерпретатор, нужно ещё установить пакет сборщика этого языка, этого интерпретатора.
14: Да, то есть у нас возникает такая зависимость, то есть у нас пакет языка программирования, его интерпретатора зависит от пакета сборщика. То есть мы пишем в консоли установить пакет.
15: Языка программирования и неявным образом у нас устанавливаются все его зависимости. То есть сначала скачивается, устанавливается сборщик, потом при это, при помощи этого сборщика.
16: Скачивается и устанавливается уже интерпретатор нашего языка. И вот в целом все мы получаем наш готовый пакет, который мы изначально требовали и явно указали его установить.
17: Также стоит упомянуть, что в различных дистрибутивах бывают различные пакетные менеджеры. То есть, если вы используете бубунту, скажем, апт пакет.
18: Менеджер, то вы не сможете его использовать в другом дистрибутиве, но что важно отметить функционал пакетных менеджеров между дистрибутивами, он очень схож. Таким образом, если вы научитесь пользова
19: 1 пакетным менеджером 1 дистрибутива. Поймёте его основные концепции, то вам не составит труда перейти на другой дистрибутив и там уже пользоваться другим пакетным менеджером. Соответственно, помимо пакет
20: Менеджеров в линуксе есть другие способы установки пакетов и программного обеспечения. В принципе, это snap на самом деле.
21: Или он чем-то похож на плей маркет или microsoft store, но я бы сказал вам стоит его рассматривать как кандидата на установку последнюю очередь потому, что сам по себе.
22: Он довольно раздутый, ну, в плане используемого места, и применять его неэффективно. Если есть альтернатива, то лучше использовать их также следующий способ.
23: Это app image app image то есть у нас, как можно понять из названия, образ приложения, то есть готовое, как бы, условно говоря, диск с приложением, и мы его диск.
24: Грубо говоря, виртуально запускаем. Также есть возможность 3 способ собрать пакеты из исходников. То есть есть у нас исходный код и мы буквально его
25: Компилируем и собираем с нуля под нашу машину. Это нам приходится делать достаточно редко, потому что все распространённые, часто используемые пакеты уже собраны и
26: И готовы к использованию все, что нам нужно, это просто их скачать и сделать какую-то минимальную установку, ну как раз-таки, которая делается явным образом через пакетный менеджер. Ну и, соответственно, 4 способ, хотя он
27: Должен был быть 1 в этом списке это установка через пакетный менеджер, соответственно, то есть snap эп имедж, сборка из исходников и использование пакетного менеджера что ж, хватит лишних слов.
28: Давайте, пожалуй, перейдём к использованию нашего пакетного менеджера и поводим некоторые команды в терминале.
29: Получается, как я уже сказал, основная команда, которую мы используем для применения функционала пакетного менеджера, это апт, вот мы вводим команду apt нам.
30: Сводится. Подсказки какие у неё есть под команды, чтобы её использовать. Соответственно, давайте попробуем что-нибудь установить, какой-нибудь пакет, ну, скажем, в прошлом уроке.
31: Мы обсуждали, какие существуют оболочки, и если вы помните, то основная оболочка это bash, скажем, базовая оболочка, на которой базируется баш, это Шёл, если вдруг мы захотим.
32: Какую-то другую оболочку, отличную от перечисленных, то нам придётся её устанавливать давайте как раз-таки этим и займёмся, установим такую оболочку, как саш, как v.
33: Видим из списка перечисленных команд нам нужно использовать под команду install, то есть пишем apt install, ну и давайте попробуем ввести саш, как видим, у нас вводится
34: Ошибки тут написано, что мы не можем использовать команду apt без прав администратора, что это значит в том, что все?
35: Операции, которые как-то могут повлиять на состояние системы. То есть когда мы устанавливаем пакеты, мы все-таки меняем как-то нашу систему, её функционал и эти операции должны проводиться от имени
36: То есть с более высоким уровнем привилегий. Чтобы повысить наш уровень привилегий, нам нужно просто использовать префикс перед нашими командами в виде супа. То есть пишем
37: Команда потенсал. И если мы хотим повысить наши привилегии, то просто подписываем суда перед этой командой и добавляем в конце заш.
38: Так как мы устанавливаем от имени администратора, то у нас, соответственно, требуется пароль администратора. Давайте мы его введём.
39: Подтверждаем.
40: У нас устанавливается соответствующий пакет, и мы можем использовать наш новый Шёл. Мы ввели команду the саш, у нас появилось приветственное сообщение, мы нажимаем enter, и вот
41: Теперь видим. Мы находимся в новом шеле, в новой оболочке, чтобы убедиться в этом. Давайте напишем эко доллар 0. Да, как видим, мы находимся в оболочке. Саш, давайте выйдем.
42: Из неё при помощи шортката контрол д. И. Снова выведим название оболочки. Мы находимся в баше, все у нас замечательно работает. Далее, чтобы обновить.
43: Все пакеты в нашей системе нам нужно прописать следующую команду sudo apt upgrade прошу заметить, что перед всеми командами пакетного менеджера, который вносит изменения в нашу систе.
44: Мы всегда должны указывать суда, жмём enter. Как видим, нам требуется скачать большое количество пакетов, которые перечислены выше. Вы можете поставить на паузу, и, если вам интересно их почитать можно.
45: Например, заметить, что здесь используются какие-то приложения, которые связаны непосредственно с графическим интерфейсом нашей системы, то есть гном с графическим окружением.
46: Жмём y или д. После этого нажимаем enter для подтверждения и ждём какое-то количество времени, пока все пакеты скачаются и установятся устанавливаем, устанавливаем.
47: Устанавливаем, ловим внезапные ошибки. Установилось. Но важно то, что-то, что я сейчас сделал, на самом деле было неправильно перед опера.
48: Обновления всех пакетов мне изначально нужно было обновить информацию о том, какие пакеты нужно обновлять, то есть прописать команду sudo apt update это.
49: Команда, она проходится по всем доступным репозиториям.
50: Доступным для нашей системы и вытаскивает оттуда метаинформацию о том, какие пакеты нужно обновлять, в какой последовательности.
51: Вот, что ж, жмём enter, и здесь мы видим, что может быть обновлено 7 пакетов, то есть если бы мы сначала прописали апдейт, а потом апгрейд.
52: То у нас эти 7 пакетов в том числе обновились бы тоже. То есть нам бы не пришлось обновлять эти пакеты 2 раза, да, то есть это то почему стоит всегда сначала прописывать апдейт, а потом
53: Апгрейд или install. Таким образом вы рискуете 2 установить один и тот же пакет просто разных версий. Давайте обновим все пакеты ещё раз.
54: Вот у меня возникли некоторые конфликты. Если бы я использовал апдейт перед апгрейдом, то они бы у меня возникли с меньшей вероятностью. То есть используйте всегда апдейт, а я пошёл пере.
55: Запускать компьютер. Итак, давайте подытожим, какие команды установки обновления пакетов у нас есть apt install, соответственно, установка пакета или нескольких пакетов, если вы их укажете.
56: Последовательно. Апт апгрейд это обновление всех пакетов в системе, но также есть возможность обновить какой-то пакет отдельно, но это используется порядком Реже.
57: И apt update обновление информации о версии пакетов итак, пакеты мы установили, обновили интересно, можем ли мы посмотреть, что хоть за пакеты то мы установили вывести их в список да, мо.
58: И для этого нам нужно использовать команду талист с флагом install.
59: Вот, да, мы видим, что действительно у нас есть даш.
60: И какие-то другие пакеты, которые были установлены по умолчанию при установке системы. Давайте попробуем вывести детальную информацию по какому-то из пакетов, например, по тому же саш.
61: Pt шоу the саш.
62: Как видим, название пакета его версия.
63: Описание и другие полезные данные.
64: Мы выводим при помощи команды apt show кстати, стоит заметить, что мы используем апт шоу и apt лист без суда, потому что они просто выводят какую-то информацию и никак не влияют на состояние системы.
65: То есть не изменяете, поэтому можем, соответственно, использовать её без судо. Кстати, если мы напишем просто телист, то у нас выведется, выведутся все пакеты, которые мы можем установить из
66: Наших репозиториев. Буквально все, да?
67: Мы можем их фильтровать, то есть искать по ним при помощи команды apt search. Если мы хотим установить какой-то определённый пакет, например давайте отфильтруем пакеты, которые содержатся саш, как?
68: Видим, что здесь помимо обычного, саш.
69: Есть также другие пакеты, например, какие-нибудь плагины для саш таким образом расширить функционал вашей оболочки, например, если вы пользуетесь саш, да, то есть мы можем использовать apt search как инструмент поиска пакетов они
70: Только гуглить их, то есть ещё раз. Apt лист для вывода всех пакетов apt search для фильтрации по ним апт лист инсталт для вывода всех пакетов, которые уже установлены.
71: В нашей системе и апп шоу, да, соответственно детальная информация по какому-то определённому пакету.
72: Такие дела. Теперь давайте перейдём к удалению пакетов. Ну, ещё раз вспомним, что у нас установлен саш, да, вот находится этот пакет. Теперь попробуем его удалить. Ну, кстати, здесь указано квадратных
73: Скобочках буквально что он установлен, попробуем его удалить apt remove the ca кстати, как думаете в таком случае нужно использовать sudo?
74: На самом деле, да, потому что удаление это так или иначе тоже модификация системы. То есть она как-то меняет файлы и поэтому тоже нужно префиксовать суда.
75: Подтверждаем. Все, мы удалили. Саш, снова выведем список установленных пакетов. Кстати, чтобы запустить предыдущую команду, я нажимаю стрелочку вверх. Вот. То есть, если мы нажимаем стрелочку вверх, т.
76: Мы проходимся по истории команд, да, то есть вставляем их в командную строку. Если нажимаем стрелочку вниз, то мы идём вперёд. Также мы можем это делать при помощи других клавиш, например, при помощи контрол п. Ну как мнемоника.
77: Пэ. Значит привис и контрол н. Н. Значит next, да?
78: То есть стрелочка вверх.
79: И что я хотел, что я хотел, а после удаления посмотреть, установлен ли наш пакет в системе.
80: Нет, он не установлен. То есть мы действительно его удалили. Остался-ка это на самом деле зависимый пакет. То есть, помните, да, есть некоторые зависимости между пакетами, то есть, чтобы
81: Установить пакет, а нужно сначала установить пакет б. То есть в данном случае пакет саш зависим от заш каман.
82: И перед тем, как его установить, то есть, саш, мы устанавливаем, соответственно, за com, и если мы явно удаляем зсш, то у нас не удаляется сашка как зависимый пакет, то есть он является, как это сказать, осиротевшим, чтобы удалить все осиротевшие.
83: Пакеты нам нужно прописать следующее sudo apt, ауторемув, и в таком случае у нас удалятся все зависимые, вернее.
84: Пакет, от которых зависят основные, да.
85: Смотрим, в отличие от предыдущего ввода команды здесь у нас уже нет никаких, а также хотелось бы сказать, что ещё есть команда sudo apt пут, но она
86: Пользоваться, если мы хотим почислить какие-то файлы данных конфигурации нашей установленной программы. То есть, допустим, мы установили Шёл. У него есть настройка того, как будет выглядеть
87: Приглашение к вызову, да? Ну вот, допустим, здесь оно зелёного цвета. Мы конфигурации настроили под себя, прописали её сделать синим цветом, если мы просто удалили пакет и потом его установили,
88: То пакет удалился, но по сути, его конфигурация осталась и при следующей установке все эти настройки, то есть синее приглашение к вводу синяя эта строка, она останется. Но если мы пропишем пурдж, то
89: В таком случае все файлы конфигурации, они удалятся, и нам по новой придётся их прописывать.
90: Это был раздел удаления, повторяю, ремув помогает нам просто удалять пакеты ауторемув, пакеты в зависимостях, осиротевшие. Пурдж удаляет файлы данных программ.
91: И различные конфигурации.
92: Внимательный зритель заметит, что если мы введём это лист, то пакетов, здесь начинающихся на z, да и на вай, в принципе.
93: На другие буквы довольно мало. То есть как будто бы в мире должно стоить больше пакетов, которые можно установить. И вы будете правы, потому что здесь выводятся не все пакеты, а
94: Только те, которые доступны в наших текущих репозиториях, то есть которые прописаны у нас в системе. Они на самом деле, эти репозитории прописаны в следующем месте.
95: На самом деле это немного отличается от различных дистрибутивов, но в целом они находятся в plus minus 1 и той же локации нам нужно зайти в корень файловой системы далее.
96: Эти get apt sources list.
97: Етц.
98: Apt.
99: Лист. И здесь будет список всех репозиториев, которые у нас есть, да, если мы посмотрим, мы увидим путь до сервера, к которому мы, соответственно, обра,
100: Poppy если вы помните, вот и здесь тоже самое.
101: Какое-то вот описание очень много комментариев и путь до репозитория. Соответственно это официальные репозитории, которые у нас есть по умолчанию и из них
102: Мы можем устанавливать пакеты, которые указаны ниже, но если, допустим, мы хотим установить какой-то специфичный пакет, например, самый последний python. Да, давайте проверим версию питона, у нас установлено 3 12, давайте попробуем.
103: 3 13 и для этого оптимальнее всего будет поискать этот пакет в списке доступных как мы помним, это делается при помощи команды apt search python даже я бы указал.
104: 3 13 сразу и, как видим, ничего не выявилось. Но если мы добавим репозиторий, который предоставляет эти пакеты, то есть сторонний репозиторий, он так и называется.
105: Двоеточие дед снейкс. Опа.
106: Если мы добавим репозиторий, то мы, соответственно, получим доступ к этим пакетам чтобы его добавить, нам нужно воспользоваться следующей командой sudo add дэш апт дэш.
107: Репозитории суда, адапт репозиторий, то есть добавить апт репозиторий.
108: Вводим, подтверждаем оп и мы видим, что у нас здесь появился какой-то новый файл вот как раз-таки десней с описанием этого репозитория ппа де снейкс замечательно
109: Как ещё можно заметить, сразу после добавления выполнился апдейт. Это необходимо для того, чтобы получить метаинформацию по пакетам. То есть мы добавили репозиторий и сра.
110: Сразу вытаскиваем из него информацию, какие мы можем установить пакеты, да. Ну, это логично, достаточно. То есть в данном случае apt update дополнительно прописывать не нужно, но я пропишу вот.
111: Как видим, у нас здесь абсолютно те же самые строчки выявились в некотором другом количестве, но суть остаётся той же, что update автома, но суть.
112: Остаётся тоже, что update выполняется неявным образом окей, давайте поищем в этот раз python 3 13 и, как видим, он у нас появился, да.
113: Давайте его установим. Все-таки 13 подтверждаем, устанавливаем, ждём. Какое-то время у нас происходит коннекшн с нашим репозиторием. Забира.
114: Пакет устанавливается, и теперь мы можем пользоваться новым интерпретатором. Замечательно.
115: Также, если мы хотим увидеть список добавленных репозиториев, то, помимо того, чтобы залазить в эту папочку с длинным названием, мы можем прописать ещё более длинную команду в терминале ад апт.
116: Репозитория.
117: А флагом лист.
118: На и как видим, у нас здесь последовательно выводится содержимое каждого файла.
119: Оно здесь дублируется даже вот какой-то публичный ключ тоже. Т 3, репозитория, 2 базовых и 3 денекс. Если мы хотим удалить репозиторий, то
120: Мы прописываем адапт репозиторий с флагом ремув.
121: И название репозитория.
122: И обязательно делаем это с доступами, с правом доступа администратора. Как видим, он удалился, и теперь в списке доступных репозиториев мы не найдём денекс.
123: Замечательно.
124: Соглашусь с тем, что синтаксис од апт, репозиторий, муф, мол, добавить репозиторий, удалить немного не интуитивный.
125: Хорошо, с пакетными менеджерами закончили. Давайте, пожалуй, перейдём к дистрибутивам. Что такое дистрибутив? Как я уже ранее говорил, это сборка операционной системы. Ну да.
126: Там больше нечего добавить, но эта сборка может много в чем отличаться например, она может использовать совершенно другой пакетный менеджер.
127: И, соответственно, состоять из других пакетов, то есть
128: Допустим, в другом дистрибутиве под названием арш линукс, например, мы используем не суда потенсал, а какой-нибудь sudo pacman минус эс.
129: Также совершенно другие пакеты подходят для различных дистрибутивов linux, то есть если это точка деб, расширение для debian.
130: Подобных дистрибутивов. А как мы далее выясним, у бунту, это Дебин подобный, то у аршинка он немного другой. Я точно не помню какой, но
131: По моему, у федоры днф, у сентоса эрпин и так далее. В общем, суть, вы поняли? Другие пакетные менеджеры, другие.
132: И пакеты, и они по разному собираются. Далее с различными дистрибутивами поставляются различный набор предустановленных программ. То есть, допустим, в текущем дистрибутиве у бумп, у нас
133: У нас сразу есть некоторые, ну, не офисные программы программы, например, для просмотра документов. У нас сразу предустановлен терминал, а, скажем, если поставим арчине, то у нас мало того, что не будет этих программ. Так у нас ещё
134: Будет графические оболочки, мы просто установим чистое ядро системы и ничего, кроме этого, оболочку и все эти программы нам придётся устанавливать явно вручную.
135: Далее они отличаются конфигурацией, то есть они немного по разному настраиваются, немного по разному у них настраиваются некоторые программы, специализированные где-то больше возможностей кастомизации.
136: Где-то вы ставите пакет и за вас уже все сразу настроено. Просто бери и пользуйся таким образом мы выбираем дистрибутив для себя в соответствии со своими целями и ценностями. То есть если нам
137: Нужно просто выполнить задачу сделать это как можно быстрее, то мы выбираем более простые дистрибутивы, где у нас сразу же все установлено и время на настройку конфигурации.
138: Необходимое, оно будет минимальным. А если мы хотим сделать какие-то специфичные вещи или максимально настроить операционную систему под своё собственное использование. И вообще мы Любим линукс, то мы выбира
139: Дистрибутивы посложнее, где мы каждую такую мельчайшую детальку можем прописать и указать, как она должна работать.
140: Таким образом, мы, кстати, можем выиграть в производительности, потому что мы явно контролируем, как, что будет работать, что какие модули устанавливаются, какие нет и у нас просто меньше.
141: Мусорных программ, которые нам не нужны и будет просто меньше в системе. Также опять, чтобы вы понимали, у таких дистрибутивов может быть, например, разная политика обновлений. То есть, если
142: Мы возьмём убунту, она самая стабильная вероятность того, что вы её скачаете. У вас запустится с 1 раза без багов, без Лагов и прочей ерунды не берём.
143: В расчет то, что произошло сегодня, это я накосячил, но у вас меньше будет проблема с такими непредвиденными моментами, потому что дистрибутив сам по себе более стабильный и все пакеты, которые туда устанавли.
144: Они обычно проверенных версий, которые релизятся на долгосрок, если мы говорим, например, про арч линекс с его
145: Политико обновления, да, я рассказываю про арчлинукс, потому что я им большее пользовался. И я вам рассказываю, чтобы вы лучше понимали более широкое представление, имели, как отличаются, чем отличаются дистрибутивы. Так вот.
146: Про политику обновлений в ачинке у нас можно устанавливать прямо самые, самые свежие пакеты, которые буквально зарелизились вчера. Вот. То есть мы всегда получаем самые свежие пакеты, самые
147: Свежие версии программ самые новые фичи, но при этом мы жертвуем стабильностью систем, и у нас просто в какой-то непредвиденный момент может все сломаться, и нам придётся потратить некоторое время на Починку этих сломанных
148: Что не всем подходит, да, то есть каждый выбирает свой баланс. И таким образом, с опытом использования различных дистрибутивов, каждый как бы сам приходит для к своему.
149: Выбору, кому какой дистрибутив больше нравится, для чего? Вот. Но я вам рекомендую остановиться пока на бунте, потому что веских причин использовать другие
150: 1 время вы не найдёте.
151: Скорее всего, давайте, пожалуй, посмотрим, какие существуют дистрибутивы.
152: Откроем такую вот огромную диаграмму, где увидим бесчисленное количество личных дистрибутивов, которые когда-либо релизились сверху. Мы увидим шкалу года релиза, а также кто такой
153: Версии вилса. Можно здесь даже найти свою версию дистрибутива бунтон, кстати, вот она и она, как я уже сказал, она отпочковалась от дебиана, и от неё уже пошли свои дистрибутивы. Например, есть
154: Ubuntu, которая та же самая бунта просто основана на cd. Вот в целом, они группируются в такие семейства, вот семейство debian подобных, они характеризуются тем, что у них
155: Используется пакетный менеджер apt и в целом конфигурация похожа на дебби.
156: Здесь есть другие семейства, которые используют другие пакетные менеджер, и они в целом по другому немного выглядят. Редхэд, например, и все его потомки. Вот Арчинов, есть немногочисленные одиночки.
157: Не самые популярные дистрибутивы, в которых никто особо не отпочковался н. Я даже уверен, что я где-то здесь если поищу, то смогу найти android давайте попробуем кстати, андроид.
158: А, да, вот какой-то андроид.
159: Андроид икс 86.
160: Андроид это тоже линукс. Кстати, такие дела. Так.
161: Так, сегодня мы разобрались с пакетными менеджерами. Что это такое? Как им пользоваться, как устанавливать пакеты, как обновлять, как их удалять, как добавлять новые репозитории, что такое дистрибутивы и чем они отличаются. Спасибо.
162: За внимание увидимся в следующих роликах.