Линукс что это

Линукс что это

Линукс для начинающих и его практическое применение

Что такое Линукс

реклама

Первые Линукс изначально были написаны программистами для самих себя. Позднее увеличился выбор программ и появились различные графические интерфейсы (GNOME, KDE, Cinnamon, MATE, XFCE).

реклама

реклама

Разновидностей Линукс довольно много, самые популярные: Linux Mint, Ubuntu, Debian, Mageia, Fedora, OpenSUSE, ArchLinux, CentOS, PCLinuxOS, Slackware.

В России были созданы собственные версии Линукс: Rosa, ALT Linux, ASPLinux, НауЛинукс, Calculate Linux, Runtu, Rosinka, Astra Linux. Их последние годы внедряют в государственных учреждениях.

реклама

Плюсы и минусы Линукс

У Линукс, как и любой другой операционной системы, есть свои достоинства и недостатки. Поэтому прежде чем переходить на одну из ОС этого семейства, изучите её преимущества, а также некоторые особенности, которые в будущем могут сказаться на эффективности Вашей работы.

Основные достоинства Линукс:

Недостатки Линукс, с которыми её разработчики постоянно борются:

Применение Линукс на практике

В интернет-кафе

Линукс позволяет использовать относительно устаревшие компьютеры для комфортного сёрфинга в интернете. На такие компьютеры нет необходимости ставить антивирус и переживать, что кто-нибудь из пользователей что-то закачает и заразит всю локальную сеть интернет-кафе. Linux более экономно обращается к жёсткому диску ПК, поэтому по быстродействию он не сильно отстаёт от SSD.

Для обучения ребёнка

Дети любят необычный дизайн и яркие краски, многие версии Линукса предлагают подобный интерфейс. Можно не бояться, что ребёнок поймает вирус в интернете, а также он не будет жаловаться, если будет сидеть за стареньким компьютером, поскольку тот будет работать вполне резво.

Для встречи с клиентами и проведения презентаций.

Линукс имеет открытый код, а значит Вам не придётся оплачивать лицензию, как в случае с Виндовс. Для презентаций есть отличная замена Майксофт офиса – WPS office, используя его Вы покажете своим клиентам отличные знания компьютера, так как в основном опытные пользователи решаются установить Linux, а полностью на него переходят, только самые продвинутые.

В командировках

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

Для путешественников

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

Для серверов

Высокая надёжность Линукса позволяет использовать его в качестве серверной операционной системы. Например, если у человека есть старый ПК, и он хочет запустить на нём свой сайт или онлайн-магазин.

Для обучения программистов и системных администраторов

Линукс позволяет проводить очень тонкую настройку любых своих функций, поэтому незаменим как для работы, так и для обучения будущих компьютерщиков.

Большая просьба к пользователям Линукс, напишите в комментариях, какой именно версией ОС Вы пользуетесь и какие задачи она решает?

Источник

Основы Linux (обзор с практическим уклоном)

В последние несколько лет все больше и больше людей ищут возможность войти в ИТ или поглубже изучить Linux, повысив уровень своей квалификации. Вместе с тем полноценных обзоров с практическим уклоном по типу «все и сразу» написано не так уж и много (особенно на русском языке).

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

Что такое Linux?

История и определение

В 1969 году в дочернем подразделении компании AT&T – Bell Laboratories – была выпущена операционная система Unix, которая стала основной для большого количества операционных систем того времени. UNIX была проприетарной системой, лицензия на нее стоила порядка 40 000 долларов. Таким образом, позволить себе ее покупку могли только крупные компании. Это послужило толчком для старта в 1983 году проекта GNU – GNU is Not Unix. Его основоположник, Ричард Столлман, объявил целью проекта создание свободно распространяемой операционной системы. Чуть позже Столлманом был написан знаменитый манифест GNU, который стал основой для лицензии GPL (GNU General Public License), актуальной и по сей день. К началу 1990-х годов в рамках проекта GNU было написано большинство компонентов ОС – оболочка bash, компиляторы, отладчик, текстовый редактор и др. Не хватало лишь ядра операционной системы.

В 1991 году Линус Торвальдс, будучи студентом финского университета, увлекся идеей написания ядра операционной системы для своего персонального компьютера с процессором Intel. Вдохновлением и прототипом для будущего Linux стала совместимая с Unix операционная система для персональных компьютеров Minix. Уже в августе 1991 года было написано ядро операционной системы, в нее были портированы оболочка bash и компилятор gсс из проекта GNU. По признанию самого Линуса, изначально это было не более, чем хобби, однако проект оказался весьма востребованным, к нему начали присоединяться разработчики со всего мира. Дополненная массой программ, разработанных в рамках проекта GNU, ОС Linux стала пригодна для практического использования. При этом ядро системы распространялось под лицензией GNU General Public License, что гарантировало свободное распространение кода ядра системы.

Итак, сегодня Linux (или GNU/Linux) – семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU. Linux-системы распространяются в виде различных дистрибутивов, имеющих свой набор системных и прикладных компонентов (как свободных, так и проприетарных).

Серверные дистрибутивы

Дистрибутив Linux — это операционная система, созданная на основе ядра Linux, которая включает в себя набор библиотек и утилит (пакетов), разработанных в рамках проекта GNU, а также систему управления пакетами (менеджер пакетов). В настоящее время существует более 500 различных дистрибутивов, разрабатываемых как при коммерческой поддержке (Red Hat / Fedora, SLED / OpenSUSE, Ubuntu и др.), так и исключительно усилиями добровольцев (Debian, Slackware, Gentoo, ArchLinux и др.).

Дистрибутивы делятся на несколько типов в зависимости от базового дистрибутива и системы управления пакетами. Вот несколько примеров наиболее популярных серверых дистрибутивов двух типов:

Стоит отметить, что существует великое множество различных дистрибутивов на любой вкус и цвет. Их невозможно даже сосчитать, так как практически каждый представитель сообщества может собрать свой собственный дистрибутив на основе ядра Linux.

Работа с Linux

Загрузка

Алгоритм включения сервера и загрузки Linux в большинстве случаев выглядит следующим образом:

BIOS / UEFI → MBR / GPT
Выполняется код, заложенный производителем аппаратного обеспечения. Этот код проводит тестирование системы POST (Power On Self Test) и передает управление загрузчику в MBR (Master Boot Record) / GPT (GUID Partition Table)

MBR / GPT → GRUB2 (существуют и другие загрузчики)
Загрузчик из MBR / GPT очень простой – он способен только найти на диске и запустить следующий загрузчик. Как правило это GRUB2, но существуют и другие загрузчики, например LILO (в настоящее время практически не используется)

GRUB2 → Kernel
GRUB2 расположен на разделе жесткого диска в каталоге /boot. GRUB2 загружает ядро Linux (vmlinuz)

Kernel → Init
Ядро запускает процесс инициализации операционной системы. Как правило это SystemD, но существуют и другие системы инициализации, например SystemV (в настоящее время практически не используется). Процесс инициализации запускает все остальные процессы в системе

Подключение

Командная оболочка

Подключиться к Linux для управления можно в интерфейсе командной строки (command-line interface, CLI) или в графическом интерфейсе (graphical user interface, GUI). При работе с серверной инфраструктурой в подавляющем числе случаев GUI отсутствует и взаимодействие с сервером осуществляется в CLI. При входе пользователя на сервер в CLI запускается командная оболочка (в GUI командную оболочку можно запустить через эмулятор, например Terminal). Командная оболочка (shell) – это программа, которая принимает команды с клавиатуры и передает их операционной системе для выполнения. Наиболее распространенной командной оболочкой в Linux является GNU bash (Bourne Again SHell). bash основывается на другой легковесной оболочке-предшественнике – sh (Bourne sh), созданной Стефеном Борном.

Команды можно выполнять с помощью командной строки, указав имя двоичного (бинарного, bin) исполняемого файла или сценария. По умолчанию в Linux много команд, которые позволяют перемещаться по файловой системе, устанавливать ПО, конфигурировать его и выполнять другие действия. Каждая запущенная команда является отдельным процессом. Важно отметить, что в Linux (в отличие от Windows) почти всегда учитывается регистр, включая имена файлов и каталогов, команды, аргументы и опции.

Подключаться к Linux и работать с командной оболочкой можно локально (например включив ПК дома или подойдя к серверу в центре обработки данных), однако гораздо чаще работать с системой требуется удаленно. Для этого необходимо настроить SSH и подключаться через него. SSH (Secure SHell) – это протокол, позволяющий производить удаленное управление операционной системой и туннелирование TCP-соединений (например, для копирования файлов). SSH основан на клиент-серверной архитектуре, которая организует защищенное (зашифрованное) соединение поверх небезопасных каналов связи. Серверная часть устанавливается на удаленном сервере, а клиентская на компьютере, с которого осуществляется подключение.

Существует много клиентов для удаленного подключения к серверу по SSH. Вот несколько примеров для различных операционных систем:

Windows
PuTTY – выбор новичка, PowerShell (команда ssh), Xshell – выбор автора, MobaXterm, mRemoteNG

Linux
Terminal (команда ssh) – выбор новичка и автора, Asbru Connection Manager

MacOS
Terminal (команда ssh) – выбор новичка и автора, Core Shell

Установка программ (утилит) пакетным менеджером

Зачем нужны пакетные менеджеры?

На заре развития Linux установить приложение (утилиту) можно было только путем скачивания исходного кода программы и компиляции. Это не практично и не слишком удобно для пользователей, поэтому были разработаны пакетные менеджеры. Установка приложений в них производится из пакетов – архивов с файлами скомпилированной программы. Большинство популярных дистрибутивов Linux содержат пакетные менеджеры, способные устанавливать любое программное обеспечение. Пакетные менеджеры имеют свой список репозиториев – серверов с базой пакетов. Во время установки алгоритм менеджера находит необходимый пакет в базе и производит автоматическое скачивание, установку и настройку.

DEB (.deb)
ОС – DEB-based, например Debian, Ubuntu, AstraLinux
Система управления пакетами – DPKG (работает только с локальными пакетами)
Пакетный менеджер – apt

RPM (.rpm)
ОС – RPM-based, например RedHat Enterprise Linux, Fedora, CentOS
Система управления пакетами – RPM (работает только с локальными пакетами)
Пакетный менеджер – yum (в последних дистрибутивах заменен на dnf)

Практика

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

Ниже приведены несколько примеров команд:

При необходимости уточняйте описание утилит и ключей выполнения в Интернете или в руководстве man.

Структура файловой системы и работа с файлами

Типы файлов

Все объекты в Linux являются файлами. Существуют следующие типы файлов:

Обычные файлы
Символьные и двоичные данные (текст, картинки, программы и др.)

Каталог (директория) d
Список ссылок на файлы или другие каталоги

Символьные ссылки l
Ссылки на другие файлы по имени

Блочные устройства b, символьные устройства c
Интерфейсы для взаимодействия с аппаратным обеспечением (диски, терминалы, клавиатуры, принтеры и др.). Когда происходит обращение к файлу устройства, ядро операционной системы передает запрос драйверу этого устройства

Сокеты s и каналы p
Интерфейсы для взаимодействия процессов

Структура файловой системы

Структура файловой системы представляет собой дерево, корнем которой является каталог /.

Рассмотрим подробно структуру и назначение каталогов:

/bin (binaries) – исполняемые файлы самых необходимых утилит. Может быть символьной ссылкой на /usr/bin

/boot – файлы, необходимые для самого первого этапа загрузки – загрузки ядра (и обычно само ядро)

/dev (devices) – блочные и символьные файлы устройств (диски, терминалы, клавиатуры, принтеры и др.)

/etc (etcetera) – конфигурационные файлы системы и различных программ

/home – домашние каталоги пользователей для хранения «личных» файлов

/lib (libraries) – файлы библиотек (стандартных функций, необходимых многим программам), необходимых для работы утилит. Может быть символьной ссылкой на /usr/bin

/mnt (mount) – каталог для подключения файловых систем (съемных носителей и др.)

/opt (optional) – каталог для дополнительных программ (проприетарных драйверов, агентов мониторинга и др.)

/proc (process) – файлы в оперативной памяти, в которых содержится информация о выполняемых в системе процессах

/root – домашний каталог пользователя root

/sbin (system binaries) – файлы системных утилит, необходимые для загрузки, резервного копирования и восстановления системы. Может быть символьной ссылкой на /usr/sbin

/sys (system) – виртуальная файловая система sysfs, которая содержит информацию об аппаратном обеспечении (ЦПУ, ОЗУ, дисках, сетевых устройствах), драйверах, ядре системы и др.

/tmp – каталог для временных файлов, обычно зачищается при каждой загрузке системы

/usr – пользовательский каталог, который содержит каталоги исполняемых файлов и конфигурационных файлов

/var (variable) – файлы, создаваемые или используемые различными программами (логи, очереди, идентификаторы процессов, БД и др.)

Права доступа

В Linux права доступа к файлам (в том числе к каталогам) задаются для трех видов пользователей – владельца, группы владельца и остальных. Также есть три типа доступа к файлу – чтение r (Read), запись w (Write) и исполнение x (eXecution), которые задаются для каждого из видов пользователей. Прочерк означает отсутствие доступа.

Таким образом, права доступа к файлу выглядят следующим образом:

права для владельца (u, user) – read, write, execution

права для группы владельца (g, group) – read, write, execution

права для остальных пользователей (o, other) – read, write, execution

Практика

На практике пользователю необходимо осуществлять навигацию по системе, просматривать, создавать, редактировать и удалять файлы, настраивать права доступа.

Ниже приведены несколько примеров наиболее часто используемых команд:

При необходимости уточняйте описание утилит и ключей выполнения в Интернете или в руководстве man.

Процессы и потребление ресурсов сервера

Процессы

Если предельно упростить, то процесс – это любая программа, которая выполняется в системе. В ходе работы с системой может быть запущено множество программ, которые, в свою очередь, могут запустить множество процессов. Простейший пример процесса – командная оболочка bash. Каждому процессу в Linux присваивается уникальный идентификатор процесса (PID), который используется ядром для управления процессом до завершения программы или команды, с которой он связан.

Процесс может находиться в следующих статусах:

Выполнение (R, Running)
Выполнение или ожидание ЦПУ для выполнения

Сон (S, Sleep)
Прерываемое программно ожидание

Непрерываемый сон (D, Direct)
Ожидание «прямого» сигнала от аппаратной части для прерывания

Приостановлен (T, Tracing)
Отладка

Зомби (Z, Zombie)
Выполнение завершено, однако ресурсы не освобождены

Почти любой процесс (кроме процесса в статусе D) может быть принудительно прерван администратором в случае необходимости («убит»). Это не всегда безопасно, однако возможно.

Запущенные процессы требуют использования аппаратных ресурсов сервера – ЦПУ, ОЗУ, дисков, сетевых интерфейсов.

Практика

На практике пользователю необходимо просматривать списки процессов и останавливать процессы, а также просматривать имеющиеся и потребляемые ресурсы сервера в системе.

Ниже приведены несколько примеров наиболее часто используемых команд:

При необходимости уточняйте описание утилит и ключей выполнения в Интернете или в руководстве man.

Программный комплекс systemd

Зачем нужен systemd?

SystemD – это программный комплекс, состоящий из системных компонентов Linux. Основным компонентом является система инициализации системы SystemD, которая пришла на смену SystemV в большинстве современных дистрибутивов. Ядро Linux запускает процесс systemd, который, в свою очередь, запускает все остальные процессы системы.

SystemD предоставляет следующий функционал:

Запуск служб при старте системы (по возможности параллельно) по различным таргетам (target, аналог уровней загрузки в SystemV)
Обеспечивается обратная совместимость с системами инициализации SystemV и LSB

Контроль состояния запущенных служб

Управление устройствами, входом в систему, сетевыми подключениями, ведение журнала событий

Интерфейсы для реализации функциональных возможностей ядра – cgroups, autofs, kdbus

Набор утилит для управления системой – systemctl, journalctl и др.

Что такое systemd unit?

Описание юнита состоих из нескольких секций:

Unit
Description (краткое описание), After (ожидание запуска), Requires (обязательная зависимость) и др.

Service
Type (тип) – по умолчанию Simple, ExecStart (команда для запуска), ExecStop (команда для остановки) и др.

Install
WantedBy (таргет или уровень запуска, на котором юнит должен запуститься)

Файлы systemd unit располагаются в следующих каталогах:

/etc/systemd/system – юниты, создаваемые администраторами

/usr/lib/systemd/system – юниты из установленых пакетов

/run/systemd/system – юниты, создаваемые во время работы системы (в runtime)

Редактировать и создавать юниты можно с помощью текстового редактора (например vi или nano).

Примеры systemd unit – NGINX, Apache

Практика

На практике пользователю необходимо просматривать различные systemd unit, просматривать их содержимое и управлять сервисами, а также читать журналы логов.

Ниже приведены несколько примеров наиболее часто используемых команд:

При необходимости уточняйте описание утилит и ключей выполнения в Интернете или в руководстве man.

На практике пользователю необходимо уметь просматривать сетевые настройки сервера, а также уметь проводить простейшую диагностику сетевых проблем.

Ниже приведены несколько примеров наиболее часто используемых команд:

При необходимости уточняйте описание утилит и ключей выполнения в Интернете или в руководстве man.

Источник

Что такое Linux? Статья-шпаргалка для новичков

Что такое Linux?

Салют! Это статья — попытка систематизировать некие базовые знания об Linux’ах, которая может быть полезна для продвинутых пользователей, разработчиков и админов Windows, которые еще не имели (или имели крайне небольшой и отрывочный) опыт работы с Linux системами и не знают, с чего начать, однако хотят попробовать — сами, или по причине производственной необходимости. Каждый пункт содержит не исчёрпывающие сведения, а лишь отправные пункты для дальнейшего изучения (гуглежа) материала.

Если интересно — прыгайте под кат

А что такое Linux?

Под именем Linux сегодня люди понимают одну из двух вещей:

Несколько слов об ядре.

Давайте я расскажу вам чуть больше о GNU/Linux ядре.

Первое, вы должны знать, что все ядра ОС бывают трех типов:

Основная разница между монолитным и микроядром в том, что микроядра включают только:

В то время как монолитные ядра также включают в себя:

Ядро Линукса занимается:

Все программы, запускаемые пользователем, работают в так называемом пользовательском пространстве (user space). Эти программы взаимодействуют с ядром через интерфейс системных вызовов (system call interface, SCI). Также, Ядро ограничивает доступ к ЦПУ, памяти для пользовательских программ, в то время как код из ядра имеет неограниченным доступ к ресурсам компьютера. Все пользовательские программы взаимодействуют с друг другом при помощи межпроцессной коммуникации (interprocess communication, IPC)

Так же, несмотря на то, что большинство считает Ядро монолитным, оно использует модули. Модули могут быть встроенными или подгружаемыми. Последние могут быть включены или выключены во время работы ОС. Больше про модули можно прочесть на АрчВики

C помощью вышеуказанных механизмов, Ядро может быть использовано для продвинутых настроек безопасности, создание контейнеров, и виртуальных машин.

GNU Core Utilities (coreutils)

GNU Core Utilities (coreutils) — набор программ, системных утилит, которые есть почти на всех GNU/Linux сборках. Он включают в себя:

Также туда входят следующие утилиты:

chgrp, cksum, csplit, dir, dircolors, expr, factor, hostid, install, link, logname, mkfifo, mknod, nl, nohup, od, pathchk, pinky, printenv, printf, ptx, shred, stty, sum, sync, tac, tsort, tty, unlink, users, vdir

Теперь, когда мы уже чуть-чуть знаем об ядре, системных утилитах, нам нужно познакомиться еще с несколькими моментами, и мы сможем начать работать с нашей машиной под управлением GNU/Linux, и начать, пожалуй, стоит со среды, в которой выполняются все вышеуказанные программы — в командной строке Bash.

Bash — интерпретатор командной строки

Теперь я хочу вам рассказать о командной строке в Linux. Командная строка — это интерфейс для ввода команд, а Bash — оболочка (shell) и интерпретатор комманд. Большинство людей знакомы с command.com в DOS, Windows или более новым и продвинутым PowerShell, то вот сюрприз о Linux’e: их здесь много. Целое семейство разных интерпретаторов. Некоторые из них проще, другие сложнее, какие-то имеют маленький размер, и так далее. Факт в том, что если вы будете работать с Linux серверами, вы будете работать с одним из них.

Bash является оболочкой по умолчанию в Linux дистрибутивах на протяжении многих лет, и используется в RHEL/CentOS, Oracle Linux и так далее. Но у него есть популярные альтернативы: Dash (Debian, Ubuntu), zsh, и другие. Они все в целом похожи друг на друга, потому что поддерживают стандарт POSIX, но имеют небольшие отличия в деталях.

Bash — Bourne Again Shell, имя которого является игрой слов на тему Bourne — born (рожденный). Борн — фамилия автора оригинальной командной строки Bourne shell (1979) или просто shell для Version 7 Unix. Первая версия Bash была написана Брайаном Фоксом, и вышла в свет в 1989, как одна из попыток заменить проприетарный Bourne Shell открытым продуктом. В свою очередь, Bash, сохраняя совместимость с оригинальным интерпретатором, принёс много новых фич, а также взял некоторые идеи из других проектов. Так, команда `history` была “позаимствована” из проектов csh и ksh.

Системы управления пакетами

В то время как в Windows, вы обычно идёте на какой-то сайт, скачиваете exe файл программы или инсталлятора, копируете или устанавливаете его, в Linux системах, обычно это делается по-другому. Хотя да, вы всё ещё можете скачать файл и установить его, но это считается наименее популярным методом установки.

Наиболее популярный — установка с помощью системы управления пакетами.

Любая из них делает следующее:

Почему я отдельно указал на установку зависимостей? Дело в том, что пока Windows программы обычно хранят их зависимости в той же папке, что и программа (\*.dll файлы, к примеру), в Linux системах зависимости устанавливаются в общую для всех программ директорию с целью последующего переиспользования данных зависимостей и библиотек. Обычно, \*.so — расширение файлов библиотек в Linux.

Linux путь предполагает написание маленьких вещей, которые делают хорошо одну задачу. В том числе поэтому здесь большое количество зависимостей и есть проблема с тем, чтобы содержать их в порядке.

Существуют две наиболее популярные системы управления пакетами для GNU/Linux.

Первая называется Yum (или DNF). В ней используется пакетный менеджер RPM (RPM Package Manager). Используется в следующих дистрах:

Вторая — Apt. В качестве пакетного менеджера использует dpkg. Наиболее популярные дистрибутивы с ней:

Slackware, Arch используют свои собственные пакетные менеджеры: slackpkg и pacman.

Каждая Linux система, которая идет с предустановленной системой управления пакетами, содержит преднастроенные Интернет-репозитории (или, как иначе говорят, репы — такой вот жаргонизм). Так же, системный администратор может легко добавить свои собственные репозитории.

Наконец, если вы оказались в изолированной от Интернета сети, то вы можете установить пакеты из инсталляционных файлов с помощью пакетного менеджера

Это установит пакет в RHEL/CentOS, Fedora, Oracle Linux, SUSE/OpenSUSE

Это установит пакет в Debian, Ubuntu, Linux Mint

Еще одна возможность для пользователей ПК. В последнее время, часть разработчиков софта для конечных пользователей решила использовать дистрибутива-независимые пакетные менеджеры. Для этого, все зависимости упаковываются в один файл. Наиболее популярные варианты: Snap, Flatpak, AppImage. Первые два предлагают возможность обновление установленного через них ПО с помощью загрузки обновлений из их репозиториев, AppImage не имеет такой возможности. Snap идёт предустановленным в Ubuntu, начиная с 16.04 LTS.

Система инициалиазации

Другая подсистема, которая не является частью Ядра, но является второй по значимости после него — это init система, которая используется для инициализации пользовательского пространства (user space) и управлением пользовательских процессов.

Здесь есть несколько альтернатив, давайте обозначим наиболее популярные из них:

Особняком стоит Slackware, популярный дистрибутив, который использует собственное BSD-подобное решение в качестве инит системы.

systemd

С помощью systemd можно сделать из обычной программы программу-сервис.

Больше о systemd можно прочесть здесь: en.wikipedia.org/wiki/Systemd

Ваш первый вход на Linux сервер

Конечно, вы можете подключиться к серверу с помощью клавиатуры, мышки и монитора. Но обычно большинство людей подключаются к серверам удаленно. Для этих целей служит сервис (демон) sshd (ssh daemon, или ssh server). Он слушает 22 TCP порт. Позволяет подключаться как с логином-паролем, так и с помощью ключей. Настройки входа зависят от конкретной инсталляции.

В 10-ку, с определенного момента, встроен ssh клиент. Для более старых версий Windows есть клиент Putty — маленький, простой, бесплатный клиент для входа на удаленные Linux сервера. Должен отметить, что Putty не мог входить по обычной паре ключей и нуждался в ключе в формате ppk — здесь инструкция, как сконвертировать ключ в нужный формат.

Если вы хотите настроить вход по ключу, вам надо сгенерировать пару ключей (приватный и публичный), вписать содержимое публичного ключа на удаленном сервере в файл authorized_keys, который расположен в папке

Кроме того, система разрешений еще может указывать на исполняемость файла (1). Так, к примеру, пользователь может разрешить другим пользователям запускать какой-то файл, и тогда права будут 0755 — себе полные права (4+2+1), остальные пользователи могут считать (4) и запустить (1) исполняемый файл.

Часто разрешения представлены в текстовой форме. Так, rwx значит 7, rw- значит 6, r-x значит 5, and so on. К примеру, r—r—r— значит 444 — файл только для чтения для всех пользователей, включая владельца.

Управление пользователями

В большинстве случаев новый сервер будет выдан с рутовой учетной записью (пользователем root), которая является суперпользователем (“админом” в терминах Линукс систем). Однако, очень рекомендуется не использовать root пользователя в ежедневной работе. Для этого, вам нужно научиться управлять пользователями. Это довольно просто и логично:

Раньше, наиболее популярным пакетом с сетевыми утилитами был net-tools. Он предоставлял такие утилиты как ifconfig (просмотр сетевых интерфейсов), netstat (просмотр сетевых соединений), и другие полезные утилиты.

Но всё течет, всё меняется, и теперь пакет net-tools не установлен по умолчанию, будучи замененным на более современный пакет iproute2.

В завещании, меня просили упомянуть
Васю кхм, systemd-networkd. Исправился, упомянул.

Также стоит отметить про встроенный «файерволл» — в старых системах использовался iptables, который задавал правила для компонента ядра Netfilter; сейчас рекомендуется использовать утилиту ufw, надстройку над iptables, как обладающую более человекопонятным интерфейсом.

FHS — стандарт иерархии файловой системы (Filesystem Hierarchy Standard)

Я когда-то любил простоту Windows. A:\ для флоппика (да, я достаточно старый), C:\ для системы, и зачастую, единственный диск вообще (если нет, то D:\ для дистрибутивов игр, фото и видео), и, наконец, E:\ для CD-ROM. Всё просто!

А теперь я покажу минимальный минимум, который вам встретится в большинстве дистрбов, лол:

/
/boot — файлы загрузчика
/dev — файлы устройств
/root — домашняя папка для пользователя root (опционально). Может быть слинковано с /home/root
/etc — хранит конфигурацию машины
/home — корневая директория для “хомяков” пользователей
/lib — хранит важные общие библиотеки и модули ядра
/media — точка монтирования к извлекаемым накопителям
/mnt — точка монтирования для временно подключенных файловых систем (флешки, внешние диски, сетевые диски)
/usr — сюда попадает установленное пользователями ПО
/opt — сюда тоже попадает установленное пользователями ПО
/var — здесь хранятся вещи, которые не статичны. К примеру, логи /var/logs
/sbin — системные исполняемые файлы
/bin — общие (расшаренные) исполняемые файлы
/srv — для хранения данных сервисов (веб-серверов, к примеру)
/tmp — временный раздел, данные в нём могут быть удалены при перезагрузке сервера, выходе пользователя, остановки сервиса и так далее.

Большинство файлов могут быть поделены на четыре группы по двум признакам:
“Расшариваемые”-”Не расшариваемые” (“shareable”-”unshareable”).

“Расшариваемые’ файлы хранятся на одной машине и могут быть доступны с других. «Нерасшариваемые» — файлы, которые не предназначены для организации общего доступа.

“Статичные” — “Изменяемые (“static”-”variable”).

«Статичные» файлы включают в себя библиотеки, бинарники, документацию и тп, которые меняются только при участии системного администратора.

«Изменяемые» файлы это файлы, которые не статичны и могут быть изменены во время работы системы, пользователей или программ. К примеру, при организации резервного копирования, такие файлы нуждаются в более частом расписании бэкапова.

Понимание этого концепта облегчит понимание стандарта иерархии и организации файловой системы.

Что хочется написать дополнительно — что если в Windows ФС по умолчанию — NTFS, то в Linux их гораздо больше, среди популярных стоит отметить — ext3, ext4, xfs, btrfs. Каждая используется в тех или иных дистрах, имеет свои преимущества и недостатки.

Window server/Display system

Хорошо, теперь, когда вы начитаны о командной строке, вы думаете — ага, именно поэтому Linux не популярен среди обычных пользователей! К счастью, не по этой причине. Linux имеет два популярных сервера дисплеев на текущий момент: X11 server (легаси, но все еще самая популярная опция) и Wayland. Последний находится в экспериментальном статусе уже около десяти лет. Поверх дисплей сервера устанавливаются десктопные окружения (Desktop Environments, DE), которых ну очень много. Самые популярные: Gnome, KDE, Unity, и другие. Если установлен дисплей сервер и десктопное окружение, то система выглядит почти как обычный ПК. С окошками, рабочим столом, панелью и прочим.

Полезные ссылки

На эти книги (курсы) я ссылок не дам, но ищущий да найдет:

RH124: Red Hat System Administration I
RH134: Red Hat System Administration II
RH254: Red Hat System Administration III
RH342: Troubleshooting and Diagnostic
RH442: Performance Tuning

Причем, материалы курсов доступны и на русском языке.

Источник

Linux за 30 минут. Руководство по выбору и использованию Linux для новичков

Линукс что это

Партнер

Линукс что это

Содержание статьи

Ог­ромное количес­тво хакер­ско­го соф­та работа­ет толь­ко на Linux и соб­рано в спе­циали­зиро­ван­ных дис­три­бути­вах вро­де Kali. К тому же при пен­тесте ты час­то будешь стал­кивать­ся с сис­темами на Linux и дол­жен уметь с ними обра­щать­ся. Да и прос­то полез­но иметь опыт работы с этой мощ­ной, абсо­лют­но бес­плат­ной сис­темой. В жиз­ни при­годит­ся, поверь!

В этой статье мы попыта­емся рас­ска­зать все, что сами хотели бы знать, ког­да начина­ли инте­ресо­вать­ся «Линук­сом» мно­го лет назад. Это и теоре­тичес­кие све­дения, которые помогут ори­енти­ровать­ся, и впол­не прак­тичные советы.

Важное предупреждение

По уров­ню слож­ности это не впол­не харак­терная для «Хакера» статья — она рас­счи­тана на сов­сем‑сов­сем новых поль­зовате­лей. Мысль о ней появи­лась, ког­да мы ста­ли ком­поновать под­борку матери­алов об исполь­зовании Linux и обна­ружи­ли, что у нас нет ничего, что подош­ло бы в качес­тве самого начала. А если и есть, то пок­рыто тол­сты­ми мха­ми.

Ес­ли ты про­тив таких ста­тей в «Хакере», можешь, конеч­но, отме­тить­ся в ком­мента­риях, но, пра­во сло­во, луч­ше иди почитай про экс­плу­ата­цию ядра или про то, как писать минима­лис­тичный бэк‑шелл на ассем­бле­ре. Бла­го таких ста­тей у нас боль­шинс­тво и менять в этом пла­не мы ничего не собира­емся.

Ес­ли же тема кажет­ся тебе в самый раз, то прис­тегивай­ся — наш звез­долет отправ­ляет­ся, что­бы про­нес­тись по осно­вам Linux со сверх­све­товой ско­ростью.

Какой бывает Linux

Пер­вое, с чем стал­кива­ется человек, жела­ющий уста­новить Linux, — это огромное раз­нооб­разие дис­три­бути­вов. Все эти наз­вания прос­то невоз­можно упом­нить, но в реаль­нос­ти и не нуж­но.

Три основных семей­ства дис­три­бути­вов, о которых нуж­но знать в пер­вую оче­редь, — это Debian, Red Hat и Arch. Еще мож­но вспом­нить SUSE, Mandriva и Gentoo, но день­ки их сла­вы уже позади, да прос­тят нас их поль­зовате­ли!

Chrome OS — это тоже внут­ри впол­не нас­тоящий Linux, и в новых вер­сиях под­держи­вает­ся запуск прог­рамм для Linux. Но в один ряд с дру­гими дис­три­бути­вами эту ОС все же не пос­тавишь.

Из семей­ства ­Debian в пер­вую оче­редь сто­ит обра­тить вни­мание на Ubuntu. Это и есть самый оче­вид­ный выбор, если ты раз­думыва­ешь, с чего начать. Ком­пания Canonical, сто­ящая за Ubuntu, прик­ладыва­ет огромные силы для того, что­бы этот дис­три­бутив хорошо работал и был дру­желю­бен к поль­зовате­лю. Для это­го дис­три­бути­ва име­ется широчай­ший выбор ста­биль­но работа­ющих прог­рамм — ты точ­но не будешь испы­тывать в них недос­татка.

Линукс что этоСве­жеус­танов­ленный Ubuntu Линукс что этоСтан­дар­тный набор при­ложе­ний в Ununtu

К тому же у Ubuntu огромное сооб­щес­тво, что зна­читель­но упро­щает решение проб­лем: в 99% слу­чаев ты будешь не пер­вый, кто испы­тыва­ет ту или иную слож­ность. Прос­то копируй сооб­щение об ошиб­ке, и навер­няка най­дешь вет­ку форума, где более опыт­ные товари­щи объ­ясня­ют дру­гим пос­тра­дав­шим, как с этим спра­вить­ся.

Есть и дру­гие популяр­ные дис­три­бути­вы, осно­ван­ные на Debian, — к при­меру, Raspberry Pi OS, MX Linux или Kali Linux. А на Ubuntu базиру­ются Linux Mint, elementary OS и мно­гие дру­гие. Кста­ти, Mint и elementary тоже неп­лохие вари­анты для нович­ков.

Ста­вить Kali в качес­тве пер­вой сис­темы обыч­но не рекомен­дуют: этот узкоспе­циали­зиро­ван­ный хакер­ский дис­три­бутив пло­хо прис­пособ­лен для пов­седнев­ной работы, и уста­нав­ливать его пред­полага­ется в вир­туал­ку или в качес­тве вто­рой ОС. К тому же он под завяз­ку забит хак­тулза­ми вмес­то обыч­ных при­ложе­ний, что будет сби­вать с тол­ку. Но если ты ста­вишь Linux спе­циаль­но, что­бы заполу­чить все это богатс­тво, то кто мы такие, что­бы тебя оста­нав­ливать?

Что до самого Debian, то его глав­ная фиш­ка — это лицен­зион­ная чис­тота. Раз­работ­чики вни­матель­но сле­дят за тем, что­бы в него не попало ни строч­ки кода, который рас­простра­няет­ся не по сво­бод­ной лицен­зии (что, может быть, и пох­валь­но с точ­ки зре­ния иде­оло­гии, но ког­да ты хочешь осво­ить­ся с Linux, ско­рее все­го, обер­нется раз­ного рода слож­ностя­ми).

К семей­ству дис­три­бути­вов Red Hat отно­сят­ся в пер­вую оче­редь Fedora, Red Hat Enterprise Linux (RHEL) и Rocky Linux. На обыч­ный ПК есть смысл ста­вить «Федору», тог­да как RHEL — это ком­мерчес­кое решение для сер­веров, а Rocky Linux — его неком­мерчес­кий клон, соз­данный сооб­щес­твом.

Линукс что этоFedora Linux

И наконец, Arch — это край­не инте­рес­ный «гиков­ский» дис­три­бутив, который ты можешь сам соб­рать по кир­пичикам и нас­тро­ить как тебе захочет­ся. Одна­ко нырять в это без пред­варитель­ных поз­наний в Linux не совету­ем. Решая проб­лемы, ты, конеч­но, при­обре­тешь мно­го цен­ных зна­ний, но это далеко не самый прос­той путь, и луч­ше отло­жить хож­дение по нему на потом.

У Arch есть и менее суровые вари­ации — Manjaro и EndeavourOS. В обе­их хотя бы при­сутс­тву­ют заранее нас­тро­енные и под­готов­ленные к работе окру­жения, но тоже аске­тич­ные. С дру­гой сто­роны, отсутс­твие необуз­данно­го раз­нооб­разия может быть плю­сом при пер­вом зна­комс­тве, так что начинать с Manjaro — не такая пло­хая идея. Осо­бен­но если ты пла­ниру­ешь ста­вить Linux на сла­бый компь­ютер.

Линукс что этоManjaro для ARM

Not Unix

В чем отли­чие Linux от Unix? Если очень‑очень упростить, то мож­но ска­зать, что Unix — это пре­док Linux. Более слож­ный и раз­верну­тый ответ тре­бует нем­ного углу­бить­ся в исто­рию.

В семиде­сятые годы Ричард Стол­лман при­думал кло­ниро­вать ком­мерчес­кий и по тем вре­менам дорогос­тоящий Unix и соз­дать свою опе­раци­онку, которую он наз­вал GNU is not Unix или прос­то GNU. Стол­лман и ком­пания перепи­сали все ком­понен­ты Unix и опуб­ликова­ли их под при­думан­ной ими «вирус­ной» лицен­зией GPL.

Из­началь­но сло­вом Linux называ­ли толь­ко соз­данное Линусом Тор­валь­дсом ядро. Но наз­вание Linux и мас­кот‑пин­гвин быс­тро при­жились, и ими теперь обоз­нача­ют всю ОС — нес­мотря на воз­ражения Стол­лма­на и прось­бы писать толь­ко GNU/Linux.

Linux в эпо­ху интерне­та стал быс­тро набирать популяр­ность, и ком­мерчес­ким вари­антам Unix со вре­менем прос­то не оста­лось мес­та. Тем не менее до сих пор живы его потом­ки — опе­раци­онные сис­темы FreeBSD и OpenBSD, которые теперь бес­плат­ны и мно­гое заимс­тву­ют из сов­ремен­ного «Линук­са». Кста­ти, на FreeBSD осно­ваны macOS и iOS.

По­луча­ется, что выбор дис­три­бути­ва — это в пер­вую оче­редь выбор под­хода и даже иде­оло­гии. Одна­ко более при­зем­ленным ори­енти­ром обыч­но слу­жит набор основных ком­понен­тов, из которых стро­ятся дис­тры. Давай обсу­дим глав­ные из них.

Яд­ро, хоть и кри­тичес­ки важ­но для работы сис­темы, осо­бо не инте­рес­но с точ­ки зре­ния поль­зовате­ля — вза­имо­дей­ство­вать с ним нап­рямую тебе вряд ли при­дет­ся, пока ты не ста­нешь нас­тоящим гуру.

Воз­можно, ты час­то слы­шал про «сбор­ку ядра» и можешь даже самос­тоятель­но поп­робовать сде­лать это. Пос­коль­ку ядро Linux монолит­ное, в него дол­жна вхо­дить под­дер­жка мно­жес­тва вещей, которые каса­ются всех аспектов работы компь­юте­ра. Соот­ветс­твен­но, перед сбор­кой мож­но и нуж­но задать кучу вся­ких нас­тро­ек, но ничего осо­бен­но увле­катель­ного в этом, поверь, нет, хотя про­цесс край­не поз­наватель­ный.

В сис­теме может одновре­мен­но при­сутс­тво­вать сколь­ко угод­но ядер, а какое имен­но будет исполь­зовать­ся, ты можешь выб­рать в заг­рузчи­ке. Апгрейд ядра до более новой вер­сии — совер­шенно рутин­ное дело в Linux и обыч­но про­исхо­дит авто­мати­чес­ки.

Пакетный менеджер

Лю­бой Linux сос­тоит из тысяч мел­ких ком­понен­тов — прог­рамм, биб­лиотек и ресур­сов (нап­ример, фай­лов кон­фигура­ции, наборов ико­нок и так далее). Рас­простра­няют­ся они в виде пакетов (package).

Па­кет­ный менед­жер — это спе­циаль­ная прог­рамма, которая выпол­няет уста­нов­ку, нас­трой­ку, уда­ление, а так­же обновле­ние как отдель­ных при­ложе­ний, так и всей сис­темы в целом или ее ком­понен­тов.

Очень час­то один пакет тре­бует для работы наличия дру­гих, и сле­дить за эти­ми зависи­мос­тями вруч­ную на сов­ремен­ной сис­теме невоз­можно. Поэто­му осно­ва каж­дого дис­три­бути­ва — это пакет­ный менед­жер, который рулит уста­нов­кой и обновле­нием соф­та. В дис­три­бути­вах, осно­ван­ных на Debian, он называ­ется APT, в Red Hat — DNF, а в Arch — pacman.

Па­кеты менед­жер берет из репози­тория — боль­шого скла­да, куда соз­датели дис­три­бути­ва заг­ружа­ют их. Репози­тори­ев зачас­тую мож­но под­клю­чить сра­зу нес­коль­ко. Нап­ример, в Ubuntu есть четыре основных: Main (под­держи­ваемый раз­работ­чиками), Universe (под­держи­ваемый сооб­щес­твом), Restricted (с проп­риетар­ным ПО) и Multiverse (с ПО, на которое дей­ству­ют нес­вобод­ные лицен­зии).

Пос­коль­ку вско­ре пос­ле уста­нов­ки Linux ты обна­ружишь необ­ходимость в драй­верах для железа, допол­нитель­ных шриф­тах, кодеках и тому подоб­ных вещах, ско­рее все­го, понадо­бит­ся раз­решить сис­теме дос­туп к запят­нанным ком­мерци­ей репози­тори­ям. В Ubuntu это дела­ется в меню «Прог­раммы и обновле­ния».

Графическая система

Да­леко не каж­дый Linux снаб­жен гра­фичес­кой сис­темой или вооб­ще нуж­дает­ся в ней — очень мно­гие дей­ствия здесь мож­но делать и из коман­дной стро­ки. Одна­ко сов­ремен­ный рабочий стол — это все же икон­ки и окош­ки.

Что­бы работать с гра­фикой, в Linux дол­жны при­сутс­тво­вать сер­вер дис­плея X.Org (тра­дици­онный вари­ант) либо новомод­ный ком­позитор Wayland, на который сей­час перехо­дят наибо­лее передо­вые дис­три­бути­вы. Плюс тре­бует­ся окон­ный менед­жер — прог­рамма, которая отве­чает за то, как выг­лядят и работа­ют эле­мен­ты интерфей­са.

Впро­чем, это всё доволь­но низ­коуров­невые под­робнос­ти, нырять в которые с ходу не обя­затель­но. Куда ско­рее тебе при­дет­ся задумать­ся о выборе рабочей сре­ды (Desktop Environment, DE). Это совокуп­ность окон­ного менед­жера и раз­ного рода прог­рамм, мел­ких (нап­ример, рису­ющих раз­ные панели, рабочий стол, вид­жеты) и круп­ных — вро­де фай­лового менед­жера. Сюда же обыч­но вхо­дит и набор базово­го соф­та: кален­дарь, поч­товик и про­чее в таком духе.

Са­мые извес­тные окон­ные сре­ды — это GNOME и KDE. Но в реаль­нос­ти их спи­сок гораз­до длин­нее. Любите­ли минима­лиз­ма могут прис­мотреть­ся к Xfce или LXDE, а Ratpoison, dwm, i3 и xmonad пре­дос­тавля­ют сре­ду с неперек­рыва­ющи­мися окна­ми, что некото­рые находят удоб­ным.

А еще от GNOME отва­лились про­екты MATE и Cinnamon — их раз­работ­чикам не пон­равил­ся интерфейс GNOME 3, и они про­дол­жили раз­вивать вто­рую вет­ку. А в elementary OS исполь­зует­ся своя сре­да под наз­вани­ем Pantheon, которую не встре­тишь боль­ше ниг­де. В общем, раз­нооб­разие огромно!

Соз­датели дис­три­бути­вов, в которые вхо­дит гра­фичес­кая сре­да, обыч­но выбира­ют одну или нес­коль­ко сред, которые будут под­держи­вать офи­циаль­но. Но при этом тебе нич­то не меша­ет поменять DE или уста­новить одновре­мен­но боль­ше одной, что­бы перек­лючать­ся меж­ду ними или исполь­зовать прог­раммы одной сре­ды из дру­гой. Про­буй, экспе­римен­тируй, и сам пой­мешь, что тебе бли­же.

Командный интерпретатор

В Linux коман­дных интер­пре­тато­ров сущес­тву­ет мно­жес­тво, и, если для Windows они лишь вспо­мога­тель­ное средс­тво адми­нис­три­рова­ния, здесь это один из основных и очень мощ­ных инс­тру­мен­тов работы с сис­темой.

Собс­твен­но, сама исто­рия Linux началась имен­но с коман­дной стро­ки, точ­нее тер­минала или даже телетай­па. Гра­фичес­кий интерфейс к нему при­дела­ли уже зна­читель­но поз­же. Имен­но поэто­му коман­дную стро­ку в Linux час­то называ­ют «эму­лятор тер­минала», а про­цес­сы с ними носят пре­фикс tty (teletype).

Как ты зна­ешь, с исполь­зовани­ем команд в Windows мож­но писать скрип­ты, авто­мати­зиру­ющие какие‑либо дей­ствия: пакет­ные фай­лы (batch files) были в ходу еще со вре­мен MS-DOS, а PowerShell замет­но рас­ширил и углу­бил эту тех­нологию. В Linux мож­но делать то же самое: соб­ранный в файл набор команд интер­пре­тато­ра может работать как слож­ная прог­рамма, а сами коман­ды явля­ются по боль­шому сче­ту язы­ком прог­рамми­рова­ния.

На­боры команд, сох­ранен­ные одним фай­лом, при­нято называть сце­нари­ями или скрип­тами. Все скрип­ты в Linux начина­ются с сим­волов #! (это сочета­ние называ­ется «шебанг») и пути к интер­пре­тато­ру — коман­де, которая будет исполнять скрипт.

Стан­дар­тным коман­дным интер­пре­тато­ром в Linux явля­ется bash — обновлен­ная и модер­низиро­ван­ная вер­сия коман­дной обо­лоч­ки Bourne shell, которая была изоб­ретена Сти­веном Бор­ном в 1978 году и исполь­зовалась еще в клас­сичес­ком Unix.

Прож­женные линук­соиды пред­почита­ют ста­вить вмес­то bash более прод­винутый интер­пре­татор — Z shell (ZSH), обратно сов­мести­мый с bash, но име­ющий по срав­нению с ним мно­жес­тво улуч­шений. Для этой обо­лоч­ки сооб­щес­твом был раз­работан спе­циаль­ный откры­тый и бес­плат­ный фрей­мворк Oh My ZSH, который содер­жит мно­жес­тво пла­гинов для авто­мати­зации работы с коман­дами и скрип­тами. Как минимум Oh My ZSH поз­воля­ет исполь­зовать кра­сивые темы офор­мле­ния окна коман­дной стро­ки, бла­года­ря которым окру­жающие точ­но соч­тут тебя гени­аль­ным хакером.

Пре­дуп­редим о проб­леме, с которой момен­таль­но стал­кива­ется каж­дый новый поль­зователь Linux. Если ты зай­дешь в какой‑то каталог и попыта­ешь­ся написать наз­вание исполня­емо­го фай­ла, что­бы запус­тить его, то ничего не получит­ся. Почему?

И еще один очень важ­ный момент. В Windows тип фай­ла опре­деля­ется его рас­ширени­ем — в зависи­мос­ти от него коман­дный интер­пре­татор и обо­лоч­ка реша­ют, как они будут обра­баты­вать файл. В Linux все устро­ено нем­ного по‑дру­гому: у bash пол­ностью отсутс­тву­ет какое‑либо ува­жение к рас­ширени­ям фай­лов. Исполня­емый файл отли­чает­ся от обыч­ного не рас­ширени­ем, а наличи­ем пра­ва на его исполне­ние: если оно есть, сис­тема счи­тает такой файл прог­раммой (или скрип­том) и пыта­ется выпол­нить. О пра­вах на фай­лы мы под­робнее погово­рим чуть даль­ше в соот­ветс­тву­ющем раз­деле.

Домашний каталог и скрытые файлы

Пос­коль­ку Linux изна­чаль­но задумы­вал­ся как мно­гополь­зователь­ская опе­раци­онная сис­тема, все пути к «домаш­ним» пап­кам, перемен­ные окру­жения, прог­раммы, которые запус­кают­ся при откры­тии тер­минала, и дру­гие нас­трой­ки зада­ются в про­филе поль­зовате­ля. У раз­ных юзе­ров они, соот­ветс­твен­но, раз­ные. Бла­года­ря это­му ты можешь, нап­ример, нас­тро­ить сис­темное окру­жение так, как ком­фор­тно имен­но тебе.

Что­бы ука­зывать на домаш­ний каталог, очень удоб­но исполь­зовать сим­вол

. Так, вмес­то / home/ vasya/ мож­но писать прос­то

Необходимый минимум команд

Итак, запоми­най самые важ­ные коман­ды, если еще не зна­ешь их:

Нес­коль­ко важ­ных сетевых команд:

По­мимо это­го, в Linux обыч­но есть нес­коль­ко ути­лит, которые силь­но облегчат тебе жизнь. Если их нет, то сто­ит их уста­новить:

Ввод-вывод и пайпы

Боль­шинс­тво прог­рамм, работа­ющих из коман­дной стро­ки, при­нима­ют дан­ные на вход и что‑то выда­ют на выходе. При этом вывод одной прог­раммы мож­но нап­равить на ввод дру­гой и таким обра­зом дос­тичь какой‑то более слож­ной цели или авто­мати­зиро­вать какой‑то про­цесс. Давай раз­берем­ся под­робнее.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Источник

Обзор Линукс (Linux) — просто о сложном

Это вступительная статья про операционную систему Линукс (Linux). В ней мы пробежимся по основным моментам и особенностям ОС Линукс. Весь материал ориентирован на новичков и написан доступным языком.

1. Что такое Линукс простыми словами

Помимо самой ОС Линукс, все пакеты (программы) бесплатны. Это крайне ценится на западе, поскольку у них слабо развито пиратство. Большинство из них платят за программные продукты, которыми они пользуются. В России ситуация не такая. Практически каждый считает, что софт является бесплатным, хотя практически все популярные программы являются платными.

Линукс что это

Существует несколько графических интерфейсов или GUI (мы рассмотрим их далее). В большинстве случаев он очень напоминает X Window System, поэтому, кто умеет пользоваться Windows легко освоит и Linux.

Кто является владельцем

ОС Линукс никому не принадлежит. Точнее можно сказать, что она принадлежит сообществу программистов. На бесплатной основе каждый желающий может вносить свои изменения, которые в дальнейшем принимаются сообществом.

Собственно говоря усилиями десятков тысяч программистов и был создан Линукс. Изначально первыми пользователями были опытные пользователи ПК. Сейчас все больше становится и обычных пользователей Линукса.

Отличительно и то, что Линукс работает на всех архитектурах: DEC Alpha, x86, x86-64, ARM и PowerPC.

Линукс является ядром операционной системой, поэтому на профессиональном уровне можно сказать, что Линукс это не ОС, а лишь ядро, но для обычного обывателя для начала работы это мало имеет значение. Ядро Линукс похоже на движок.

Зачастую в различных источниках можно увидеть название «GNU/Linux» (по сути это то же самое, что и Linux). Однако в среде профессионалов даже разгораются жаркие дискуссии по этому поводу.

Тех, кто пользуюется ОС Линукс зачастую называют «линуксойдам».

Говоря про Linux нельзя не упомянуть про проект GNU — это концепция свободного бесплатного программного обеспечения. Основатель Ричард Столлман.

2. История появления Linux

Первым разработчиком и создателем Linux считается «Линус Торвальдс». Собственно в честь его имени и была названа ОС. Торговая марка «Linux» принадлежит его создателю.

В далеком 1981 году он стал работать над собственной операционной системой семейства Unix. В 1984 году на свет появилась первая ее версия доступная для скачивания. В то время ей пользовались буквально пару человек.

Однако широкое распространение система получила лишь 10 лет спустя. После этого сообщество программистов подхватили основную идею GNU и стали вкладывать свои усилия в развитие проекта.

Логотипом и талисманом Linux является пингвин «Tux». От «обычных» пингвинов отличается жёлтым цветом клюва и лап. Придуман и запатентован в 1996 году Ларри Юингом.

Линукс что это

В 20 веке Linux стал еще более популярным. Это уже давно не любительский проект, а полноценная операционная система, которая насчитывает миллионы строк кода.

3. Особенности Linux

Перечислим основные особенности ОС Linux.

1 Большинство пользователей среду Линукса являются программисты и администраторы. Это довольно опытные и «прошаренные» пользователи. Поэтому их не пугает то, что очень много действий приходится делать через терминал (консольная строка). Для любителей Windows это покажется настоящим «маразмом», но со временем к терминалу быстро привыкаешь:

Линукс что это

Для более быстрого «общения» с командной строкой можно использовать кнопку «Tab», которая сразу подскажет все команды начинающиеся на введённый набор символ или же сразу применит автозаполнение, если возможен лишь один доступный набор.

2 Большинство серверов (хостинги, хранилища и прочее) используют в качестве основной ОС Линукс. Это связано с тем, что она бесплатна, проще настраивается и более стабильна. Однако среди обычных пользователей бесспорное лидерство занимает Windows. Лишь 5% населения пользуются Линуксом в качестве домашней операционной системы.

3 Linux является многозадачной и многопользовательской операционной системой. Windows в этом плане также сильно преуспел, но все же его возможности не очень удобные для работы нескольких пользователей

4 В Linux нету жестких дисков, как на Windows. Здесь все хранится в едином каталоге, который начинается с «/» (корневой каталог, root directory). Файлы пользователей лежат в каталогах «/home/name_users/».

5 Программные оболочки bash или tcsh. С помощью них Linux выполняет команды пользователей. Отдаваемая команда относится к текущему каталогу (current directory). Домашний каталог можно обозначать символом «

» (тильда). Это аналог «/home/name_users/»

6 Файловые системы в Linux отличны от Windows:

Стоит отметить, что Линукс поддерживает очень много файловых систем (в том числе Windows-ие NTFS, FAT32). Напомню, что Windows не поддерживает ext4. Про файловые системы Linux будет рассказано более подробно в отдельной статье.

7 Существует два вида дистрибутивов Linux, которые делятся по способу организации и управления программным обеспечением (пакетами)

8 Процессы разделены по ресурсам. Чтобы добавить новое устройств нужен драйвер. Его можно написать самостоятельно и запустить в ядре. Драйверы устройств либо интегрируются непосредственно в ядро, либо добавляются в виде модулей, загружаемых во время работы системы.

9 В Linux все считается файлами: жесткие диски, разделы, папки, приводы оптических дисков, съемные носители информации.

4. Дистрибутивы Linux — что это и какие они бывают

Говоря простыми словами:

Существуют множество видов дистрибутивов Linux. Самые распространённые в мире дистрибутивами являются:

Интересными дистрибутивами также являются и те, которые можно самостоятельно собрать. К таким относятся LFS, Gentoo, CRUX.

Линукс также практикует такой вид дистрибутивов, которые не требуют установки на жесткий диск. Они работают в режиме «LiveCD». Информация загружается в оперативную память и уже работает с нее. Примеры таких систем: Knoppix, Fedora.

Существуют и чисто российские версии:

5. Интерфейсы Linux

Поскольку дистрибутивов много, то и различных версий оформления рабочего стола/панели инструментов также много. Однако в Линуксе придумано несколько стандартов, которые поддерживаются популярными версиями ОС.

6. Репозиторий Linux

В Linux все программы (пакеты) хранятся в репозиториях, который представляет из себя сервер, где программисты выкладывают софт. Здесь можно скачать самые последние и актуальные версии программ.

Для Линукса репозиторий это аналог Play Market для Android.

Чтобы скачать пакет необходимо в терминале написать:

Источник

Семь причин, почему Линукс

Linux доминирует на всех типах компьютеров, кроме настольных (десктопы и ноуты) и, наверное, мейнфреймов. Встроенные системы, мобильные, серверы-облака-суперкомпьютеры — везде преобладают системы на ядре Linux. Линукс провалился на десктопах и мейнфреймах только потому, что в сегментах этих доминируют монополии — Microsoft и IBM. И Майкрософт всеми силами старается удержать своё доминирование (IBM понемногу сдаёт позиции — переводит свои мейнфреймы на Linux).

Майкрософту на руку играет огромная экосистема Windows, её инерция, которая тащит за собой бизнес и домашних юзеров. Но и экосистема Linux сильно разрослась по сравнению с тем, что было лет 15 назад, и сейчас многим организациям и домашним пользователям есть резон перейти на Линукс. И даже не один, а целых семь.

Прозрачность

Linux и большинство софта его экосистемы имеют открытые/свободные лицензии вроде GPL и BSD. Это значит, что исходники программ не хранятся где-то в глубоких программистских копях корпораций, а лежат перед глазами всего мира на публичных серверах. Более того, процесс разработки этого софта тоже полностью открыт, каждое изменение зафиксировано и видно всем. Поэтому код постоянно проверяется децентрализованной сетью специалистов со всего мира на предмет ошибок, уязвимостей и зловредов. Если же изменения (патчи) может присылать любой желающий — такой софт совершенствуется быстрее проприетарного (с поправкой на популярность и модель разработки, конечно).

Доступность

Вы можете получить легальную (лицензионную) копию системы полностью бесплатно, скачав в интернете. Да, есть коммерческие дистрибутивы вроде RHEL, но в них вы платите за обновления и техподдержку. Сами эти дистрибутивы, опять же, можно легально скачать, не платя ни копейки. Предприятие или организация может сильно сэкономить на лицензиях, потому что пиратский софт для них крайне рискован и потому недопустим. На мой взгляд, рядовому домашнему пользователю тоже лучше не пользоваться пиратскими (взломанными) программами, даже несмотря на почти нулевой риск попасть под статью. Ведь взломанная система или программа может работать нестабильно. Да и что мешает пиратам-взломщикам засунуть в код какой-нибудь троян или рекламный модуль?

Имея хорошие скиллы в программировании (и не имея личной жизни), вы можете сами контролировать код программ, которые используете. Тоже совершенно легально. Для организаций и компаний это особенно удобно.

Безопасность

Чуть менее чем все зловреды, обитающие в глобальной сети, разработаны для Windows и её экосистемы. Linux хорошо защищает ваши локальные системы и сети от заразы вроде троянов, вирусов, майнеров, локеров, рекламных модулей.

Да, линуксовые серверы ломают и заражают часто, но большая часть атак происходит через приложения вроде веб-серверов/движков/и т.д. или через явные ошибки в администрировании системы. При надобности уровень защиты можно выкрутить до непробиваемого уровня с помощью hardened-инструментов вроде PaX и SELinux.

Я часто вижу беспечное отношение людей к безопасности своих домашних систем, мол, что этим хакерам с меня взять. На самом деле, у каждого в 2020 году можно много чего взять с компьютеров: рабочие учётки, аккаунты от банков и кошельков, и т.д. Да и личные/рабочие файлы можно потерять из-за какого-нибудь шифровальщика, тоже приятного мало. Хакерам же незачем пыхтеть ломать вручную конкретно вас, боты и вирусня делают всё сами в массовых масштабах.

Децентрализация

Открытые и свободные программы принадлежат сразу всем и никому конкретно. Благодаря этому разные компании, страны, организации, коллективы и даже одиночки вроде Патрика Фолькердинга делают собственные дистрибутивы (комплекты) Linux. Только самых популярных дистрибутивов не меньше десятка, а сколько их всего — неизвестно, потому что дистрибутив для своих внутренних нужд может сделать любая организация.

Как следствие, пользователю Линукса ни один человек, компания или государство не могут диктовать свои условия, особенно если у него есть ресурсы для локального контроля исходников. Да, есть главная ветка ядра, которой командует великий и ужасный (сейчас уже не такой ужасный) Линус Торвальдс, но есть и другие ветки, которыми командуют другие. Да, вы в одиночку скорее всего не сможете влиять на разработку компонентов системы или приложений, но вы можете блокировать или фильтровать изменения. Здесь всё упирается в количество проприетарного софта — чем его больше у вас, тем меньше у вас контроля над происходящим (а проприетарный софт есть и на Линуксах).

Гибкость и разнообразие

Разные дистрибутивы зачастую серьёзно отличаются друг от друга, несмотря на массу всяких Болженосов, у которых из уникальных фич только нескучные обои. Какие-то дистрибутивы делают упор на корпоративную экосистему и поддержку (RHEL, SLED, Fedora, Ubuntu, Calculate), какие-то — на универсальность и мощь (Debian, openSUSE, Arch). Есть узкоспециализированные варианты (медиа-центры, рабочие станции, системы для оборудования и роботов), есть легковесные сборки, есть секурные дистрибутивы для безопасников и Kali для их ночных кошмаров. NixOS и Gentoo предлагают мощные инфраструктуры для кастомизации систем и прикладного софта, для создания заточенных под конкретные задачи сборок. Есть Линуксы для православных и сатанистов (я не шучу), для музыкантов и видеомонтажёров, игровые и образовательные сборки.

Если у вас возникает надобность решить какую-то компьютерную задачу — возможно, для неё уже сделан дистрибутив Линукса.

Линукс что это

Масштабируемость

Ядро Linux работает и на встроенных системах, и на суперкомпьютерах. В Линуксах нет искусственных ограничений на количество процессоров, ядер, оперативной памяти, и так далее. Фактически, вы можете скопировать Линукс со своего ноута на взрослый сервер, и он будет работать без проблем. Привет, Microsoft, который даже на Windows 10 Pro не даёт нормально работать больше чем с 64 ядрами 🙂

Это работает и в обратную сторону — любому одиночке-энтузиасту доступны все взрослые возможности вроде упомянутых выше hardened-инструментов или софта для промышленного оборудования и сервисов.

Простота

Да, настольный Linux проще в обращении, чем Windows. Всё, что нужно делать — это ставить-удалять программы через менеджер пакетов и обновлять систему через него же (да и апдейты ставить вас никто не заставляет). Вы избавлены от головной боли поиска и скачивания программ, в которых зачастую то реклама, то куча левых программ впридачу, то вообще зараза какая-нибудь. Система со временем почти не накапливает ошибок и глюков, хотя количество установленных-удалённых пакетов может исчисляться тысячами. Я, например, уже пятый год таскаю за собой Линукс с компа на комп простым копированием корня и домашнего каталога.
Если вам хватает линуксового софта, а железо ваше нормально поддерживается Линуксом, то затруднить переход вам могут только накопленные на Windows привычки и паттерны.

Источник

История Linux. Вкратце о главном

Корни Linux прослеживаются ещё с годов века. Точкой отсчёта можно считать появление операционной системы Unix в году в США в фирме Bell Laboratories, дочернем подразделении компании AT&T. Unix стала основной для большого количества операционных систем промышленного класса. Самые основные из них отображены на этой временной шкале:

Линукс что это

Linux же больше всего обязан своей жизнью двум проектам — GNU и Minix.

Линукс что этоИстория проекта GNU началась в сентябре года. Основоположник проекта GNU, Ричард Столлман (Richard M. Stallman) работал в это время в лаборатории искусственного интеллекта Массачусетского технологического института (Massachusetts Institute of Technology, MIT, Cambridge, Massachusetts). Столлмана называют одним из самых выдающихся программистов нашего времени.

В той среде, к которой принадлежал Столлман, было принято свободно обмениваться программами и их исходными кодами. Лицензия же на Unix от AT&T, к примеру, стоила 40 000 долларов. Позволить себе купить её могли только достаточно крупные фирмы. А без обладания лицензией, программист не имел права использовать исходные коды системы в своих разработках. Это препятствовало обмену идеями в сфере программирования и сильно тормозило процесс создания программ, поскольку вместо того, чтобы позаимствовать готовый кусок кода для решения той или иной задачи, разработчик программы был вынужден писать эту часть кода заново, что сродни изобретению колеса.

Столлман решил изменить это положение вещей в программировании. В году он объявил о начале разработки проекта GNU, целью которого было создание полностью открытой операционной системы:

После Дня Благодарения я начинаю писать Unix-совместимую программную систему GNU (Gnu’s Not Unix), которую буду предоставлять свободно(!) всем, кто может её использовать. Нужна помощь в виде времени, денег, программ и оборудования.

GNU будет содержать ядро плюс все утилиты, необходимые для того, чтобы писать и запускать программы на Cи: редактор, оболочку, компилятор Cи, линкер, ассемблер и ещё несколько вещей. После этого будут добавлены программа форматирования текста, YACC, игра Empire, электронная таблица и сотни других вещей. Мы надеемся включить всё, что обычно поставляется с Unix-системами, и всё, что ещё может оказаться полезным, в том числе онлайновую и печатную документацию.

GNU будет способна запускать программы Unix, но не будет идентична Unix. Мы будем вносить в систему улучшения, основываясь на нашем опыте работы с другими операционными системами.

Аббревиатура GNU расшифровывается как «GNU — это не Unix» (GNU is Not Unix). Unix всегда была несвободным ПО, то есть она лишает своих пользователей свободы сотрудничества, а также контроля над своими компьютерами (как Windows в наши дни). Чуть позже Столлман написал свой знаменитый Манифест GNU, который стал основой для лицензии GPL (GNU General Public License). Роль этой лицензии нельзя переоценить, она изменила всю компьютерную индустрию.

К году в рамках проекта GNU было создано большинство компонент, необходимых для функционирования свободной операционной системы. Помимо текстового редактора Emacs, Столлман создал компилятор gcc (GNU C Compiler) и отладчик gdb. Будучи выдающимся программистом, Ричард Столлман в одиночку сумел создать эффективный и надёжный компилятор, который превосходит по своим качествам продукты коммерческих поставщиков, создаваемые целыми группами программистов. Поскольку изначально при его создании ставилась задача обеспечения переносимости, сегодня существуют версии этого компилятора практически для всех операционных систем. Позже были созданы компиляторы и для других языков программирования, включая C++, Pascal и Fortran. Поэтому сейчас аббревиатура GCC расшифровывается как GNU Compiler Collection.

Как пишет Ричард Столлман: «К году система GNU была практически закончена, не хватало только одного из базовых компонентов — ядра.» Ожидалось, что ядро (оно получило название Hurd) будет реализовано как набор серверных процессов, работающих на Mach — микроядре, создаваемом в Университете Карнеги-Меллона, а затем в Университете штата Юта. Начало разработки откладывалось в ожидании выпуска Mach, которое, как было обещано, будет выпущено в виде свободно распространяемого программного обеспечения. Но его появление всё откладывалось, и тут появилось ядро, разработанное финским студентом Линусом Торвальдсом, получившее название Linux. Линус создал его в попытках усовершенствовать свою домашнюю операционную систему Minix, о которой стоит упомянуть отдельно.

Minix

В течение годов персональные компьютеры на основе микропроцессора Intel, оснащённые операционными системами от Microsoft, заняли господствующее положение на рынке настольных систем и захватили также существенную долю рынка серверов — традиционной сферы применения Unix-систем. Компьютеры на основе Intel и Intel-совместимых процессоров достигли вычислительной мощности, сравнимой с мощностью рабочих станций с Unix. Но большинство коммерческих Unix-систем не имели версий, способных работать на оборудовании Intel. Производители Unix обычно тесно сотрудничали с производителями конкретных процессоров или даже имели долю собственности в компаниях, производивших эти процессоры, а поэтому были заинтересованы в использовании своих собственных разработок. Примерами могут служить линейки процессоров SGI и MIPS.
Линукс что этоПоскольку аппаратные возможности персоналок стремительно возрастали, естественно, что рано или поздно должны были появиться варианты Unix для компьютеров на основе Intel-совместимых процессоров. Один из таких вариантов Unix-подобной операционной системы, который сыграл особую роль в истории Linux, был разработан в январе года Эндрю Таненбаумом (Andrew S. Tanenbaum), профессором Университета Врие, Амстердам, Нидерланды. Таненбаум был одним из ведущих специалистов в области разработки операционных систем. Свою операционную систему Minix (Миникс) он разработал как учебное пособие, на примере которого показывал студентам внутреннее устройство реальной операционной системы.

Конечно, как операционная система, Minix не была верхом совершенства. Она была ориентирована на микропроцессор Intel 80286, который в то время господствовал на рынке. Но у неё было одно очень важное качество — открытые исходные коды. Каждый, кто имел книгу Таненбаума «Операционные системы», мог изучить и проанализировать 12 000 строк кода, написанного на языке Си и на ассемблере. Это был тот редкий случай, когда исходные коды не были заперты под семью печатями в сейфах разработчика. Великолепный автор, Таненбаум сумел вовлечь самые выдающиеся умы компьютерной науки в обсуждение искусства создания операционных систем. Minix можно было приобрести и отдельно от книги, она могла быть реально установлена на персональный компьютер. Студенты компьютерных факультетов по всему миру корпели над книгой Таненбаума, вчитываясь в коды с целью понять, как работает та самая система, которая управляет их компьютером. И одним из таких студентов был Линус Торвальдс.

Linux

Линукс что этоВ году, Линус Торвальдс, финский студент, чрезвычайно увлёкся идеей написать совместимое с Unix ядро операционной системы для своего персонального компьютера с процессором Intel. Прототипом для будущего ядра стала операционная система Minix: совместимая с Unix операционная система для персональных компьютеров, которая загружалась с дискет и умещалась в очень ограниченной в те времена памяти персонального компьютера.

августа года Линус Торвальдс направил первое сообщение о своей разработке в группу новостей comp.os.minix:

From: torvaldsSklaava.Helsinki.Fi (Linus Benedict Torvalds)
To: Newsgroups: comp.os.inix
Subject: Чего вам больше всего не хватает в minix?
Summary: небольшой опрос для моей операционной системы Message-ID:
Date: 25 августа 1991 г., 20:57:08 GMT
Organization: University of Helsinki

Привет всем пользователям minix!

Я пишу (бесплатную) операционную систему (это просто хобби, ничего большого и профессионального вроде gnu) для AT 386(486). Я вожусь с этим с апреля, и она, похоже, скоро будет готова. Напишите мне, кому что нравится/не нравится в minix, поскольку моя ОС на неё похожа (кроме всего прочего, у неё — по практическим соображениям — то же физическое размещение файловой системы).

Пока что я перенёс в неё bash (1.08) и gсс (1.40), и всё вроде работает. Значит, в ближайшие месяцы у меня получится уже что-то работающее, и мне бы хотелось знать, какие функции нужны большинству. Все заявки принимаются, но выполнение не гарантируется 🙂

PS. Она свободна от кода minix и включает мультизадачную файловую систему. Она НЕ переносима (используется переключение задач 386 и пр.) и, возможно, никогда не будет поддерживать ничего, кроме АТ-винчестеров, потому что у меня больше ничего нет 🙁

Название «Linux» новая система получила следующим образом. Самого Торвальдса несколько смущало созвучие этого названия с его именем, поэтому он пытался назвать свою разработку Freax. Это название можно обнаружить в файле kernl/Makefile версии 0.11, и в исходных кодах других программ. Но Ари Лемке, который предоставил место для выкладывания системы на FTP сайте, назвал каталог pub/OS/Linux. И это название закрепилось за новой ОС.

Тот факт, что Линус выложил код своей ОС в интернет, был решающим в дальнейшей судьбе Linux. Хотя в году интернет ещё не был так широко распространён, как в наши дни, зато пользовались им в основном люди, имеющие достаточную техническую подготовку. И уже с самого начала Торвальдс получил несколько заинтересованных откликов.

Примерно в феврале года Линус высказал просьбу ко всем, кто уже пользовался или тестировал Linux, прислать ему открытку. Таких открыток было получено несколько сотен со всех концов света — из Новой Зеландии, Японии, Нидерландов, США. Это говорило о том, что Linux начала приобретать некоторую известность.

Вначале к разработке присоединились сотни, потом тысячи, потом сотни тысяч добровольных помощников. Система уже не была просто игрушкой для хакеров. Дополненная массой программ, разработанных в рамках проекта GNU, ОС Linux стала пригодна для практического использования. А то, что ядро системы распространялось под лицензией GNU General Public License, гарантировало, что исходные коды системы останутся свободными, то есть смогут копироваться, изучаться и модифицироваться без опасения нарваться на какое-либо преследование со стороны разработчика или какой-то коммерческой фирмы. Этот факт привлекал в ряды пользователей и сторонников Linux всё новых последователей, в первую очередь из числа студентов и программистов.

К этому времени сформировалась отдельная конференция в интернете, посвящённая Linux, — comp.os.linux. Энтузиасты образовали множество групп пользователей и в начале года вышел первый номер журнала «Linux Journal». Linux привлекла внимание промышленных фирм и несколько небольших компаний начали разрабатывать и продавать собственные версии Linux.

Первоначально Линус Торвальдс не хотел продавать свою разработку. И не хотел, чтобы её продавал кто-то другой. Это было чётко прописано в уведомлении об авторских правах, помещённом в файл COPYING самой первой версии — 0.01. Причём требование Линуса налагало значительно более жёсткие ограничения на распространение Linux, чем те, которые провозглашались в лицензии GNU: не разрешалось взимать никаких денег за передачу или использование Linux. Но уже в феврале года к нему стали обращаться за разрешением брать плату за распространение дискет с Linux, чтобы покрыть временные затраты и стоимость дискет. Кроме того, необходимо было считаться и с тем, что при создании Linux использовалось множество свободно распространяемых по интернету инструментов, самым важным из которых был компилятор GCC. Авторские права на него оговорены в общественной лицензии GPL, которую изобрёл Ричард Столлман. Торвальдсу пришлось пересмотреть свое заявление об авторских правах, и, начиная с версии 0.12, он тоже перешёл на использование лицензии GPL.

С технической точки зрения, Linux представляет собой только ядро Unix-подобной операционной системы, отвечающее за взаимодействие с аппаратной частью компьютера и выполнение таких задач, как распределение памяти, выделение процессорного времени различным программам и так далее. Кроме ядра, операционная система включает в себя множество различных утилит, которые служат для организации взаимодействия пользователя с системой. Успех Linux как операционной системы во многом обусловлен тем, что к году в рамках проекта GNU уже было разработано множество утилит, свободно распространяемых в интернете. Проекту GNU не хватало ядра, а ядро, скорее всего, осталось бы невостребованным, если бы отсутствовали необходимые для работы утилиты. Линус Торвальдс оказался со своей разработкой в нужном месте в нужное время. И Ричард Столлман прав, когда настаивает на том, что операционную систему следует называть не Linux, а GNU/Linux. Но название Linux исторически закрепилось за этой ОС, поэтому мы тоже будем называть её просто Linux (не забывая о заслугах Столлмана и его сподвижников).

P.S. Я честно пролистал на Хабре все 36 страниц поисковой выдачи по запросу «история linux» и не нашёл ничего целостного по теме, что показалось мне довольно странным, учитывая популярность системы среди хабровчан. Информация по крупицам собиралась мной со всего интернета, отделены зёрна от плевел и, надеюсь, будет вам интересна.

UPD: Мне было сделано верное замечание по поводу временной шкалы. Я её переработал, заодно ещё раз проверил все даты. Думаю, что стало лучше и очевиднее.

Источник

Про Linux — для любознательных Windows-пользователей

Линукс что это

Так уж получилось, что даже на Хабре многие имеют очень смутное представление о семействе OS Linux.

Цель данной статьи – максимально популярным языком рассказать про особенности и отличия Linux от Windows для тех, кто вообще не имел с ним дела.

Я уже не один год свободно пользуюсь Archlinux, загружая винду лишь «на поиграться». Данная статья рассказывает о вещах, которые я выяснил эмпирическим путем, тыкаясь словно слепой котенок. Если бы в свое время мне попалась бы именно такая информация именно в такой форме — это сэкономило бы мне как минимум 2 года, в течение которых я переходил с Windows на Linux.

Краеугольный принцип работы с linux-системами — “От понимания – к действию”, в то время как в Windows — “Знаю куда нажать/где поставить галочку – делаю”. Говоря другими словами, чтобы что-то сделать – необходимо понимать, как оно там, внутри, устроено.

Тезис №1 – НЕОБХОДИМО владеть работой с системой из текстовой консоли!

“Чистый” линукс (базовая система) в любом дистрибутиве выглядит как DOS – черный экран, текстовый режим, мигающий курсор ожидает ввода. Когда сталкиваешься с таким впервые – сидишь и думаешь: “Блин, а что писать-то?”.

Современные user-friendly дистрибутивы дарят иллюзию, что пользователю консоль не нужна. Добрые дяди, мол, уже обо все позаботились. Вот тебе обоина в FullHD-разрешении, вот программа для настройки параметров – знай расставляй галочки, все как в Windows… Чтобы избежать ненужных холиваров, сделаю на этом месте отступление.

Есть пользователи Linux, у которых никогда ничего не глючит. Ubuntu обновляется с одной мажорной версии на другую, причем начиная с Ubuntu 1.0, и так далее. Ребята, не пишите ничего в комментариях про ненужность консоли для пользователя, идите лучше полюбуйтесь на радугу, которой какают розовые пони в вашем мире.

В моем мире Linux глючит и ломается. Нет, все вполне окей, если ты просто запускаешь программы и пользуешься ими. Но потом вдруг наступает момент, когда тебе позарез надо, скажем, сменить открытые дрова на проприетарные… ну или просто обновить систему. И вот тут, если звезды встали неудачно, ты получаешь сломанную систему и текстовую консоль как единственный метод взаимодействия с ней. И (что самое поганое) – подобная фигня имеет свойство случаться регулярно.

Мой опыт говорит о том, что в такие моменты Windows-пользователь действует так, как он привык, повинуясь привычной идеологии. Сначала идет попытка “починить”. Windows-идеология предписывает найти в инете обсуждение аналогичной проблемы и ее решение, после чего повторить все действия, которые привели к решению проблемы. Итог – пользователь бездумно вбивает непонятные ему команды. Иногда это даже помогает, чаще – нет: содержимое команд необходимо модифицировать под конкретные условия и конкретную локальную машину, а знаний для этого нет. Как следствие, дальнейшим логическим шагом идет переустановка системы. Поверьте, я знаю о чем говорю – я сломал и переустановил Ubuntu более 10 раз… из которых около трети после самопроизвольной смерти системы в процессе обновления, без корелляции с кривизной рук.

Изучение устройства системы и работы с ней из консоли сродни известному “день потерять – за час долететь”. Устранить проблему в этом случае – гораздо быстрее переустановки, не говоря уже о том, что куда проще становится “не ломать” 🙂 Кроме того, полностью исчезает разница – сидишь за компьютером локально или через удаленную SSH-сессию. Поверьте, это ощущение многого стоит.

Тезис №2: user-friendly дистрибутивы для изучения системы подходят плохо.

Разработчики подобных дистрибутивов старательно создают интерфейсный графический слой, призванный свести взаимодействие пользователя и системы до бездумного кликанья мышкой. Технически же этот слой может представлять из себя совершенно феерическое нагромождение костылей – на bash’е, python’е, perl’е… совершеннейший ад для новичка, пытающегося понять логику работы системы. Кроме того, вменяемая документация (если она вообще есть) теряется среди форумных постов вида “чтобы получить А, введите в консоли Б, а в настройках нажмите кнопочку С”

Для обучения лучше всего подходят технически минималистичные дистрибутивы с качественной и подробной документацией. Таковыми, к примеру, являются Gentoo и Archlinux. Лично я рекомендую последний – просто потому, что в моем случае это сработало. После пары лет мытарств с Убунтой, всего пара месяцев с Арчем продвинула меня в постижении Linux раз в 10 дальше.

Последний пункт стоит отметить особо. Ubuntu с ее графическим интерфесом никак не добавляет мотивации ковыряться в консоли. Другое дело – когда изначально есть лишь консоль и сильнейшая мотивация “настроить уже этот графический интерфейс” — тут просто деваться некуда, приходится осваивать документацию и обрастать знаниями.

Windows и Linux: принципиальные отличия

1. Файловая система

2. Пакетный менеджер и понятие “пакета”, установка программ.

3. Графическое окружение пользователя

Подведение итогов

После этого, уже из графической среды, через lxterminal устанавливаю все остальное, что нужно для жизни: браузер(ы), файл-менеджер, видео и аудиокодеки, плеер, libreoffice, gimp и прочее)

Источник

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

Linux

РазработчикCommunityНаписана наC и ассамблерЛинейка ОСUnix-подобные ОССостояние разработкиТекущееИсходный кодВ основном с открытым исходным кодом, проприетарное программное обеспечение также доступноДата первого релиза5 October 1991 года ; 30 years ago ( 1991-10-05 )Целевой маркетингПерсональные компьютеры, мобильные устройства, встраиваемые устройства, серверы, мейнфреймы, суперкомпьютерыДоступно вМногоязычныйПлатформыDEC Alpha,
ARC,
ARM,
AVR32,
Blackfin, C6x,
ETRAX CRIS,
FR-V, H8 Family,
Hexagon,
Itanium,
M32R,
m68k, META,
MicroBlaze,
MIPS,
MN103,
Nios II, OpenRISC,
PA-RISC,
PowerPC,
IBM ESA/390, S+core, SuperH, SPARC, TILE64,
Unicore,
x86, TensilicaЯдро (тип)Монолитное (Linux kernel)Пользовательское
пространствоGNU и другие [lower-alpha 1]По умолчанию
пользовательский
интерфейсManyЛицензияGPLv2 [7] и другие бесплатные и с открытым кодом лицензии, за исключением товарного знака «Linux» [lower-alpha 2]Официальный веб-сайт

Содержание

Что такое Linux

На первый взгляд Linux – это операционная система. Как показано на рисунке ниже, Linux состоит из ядра (базовый код, управляющий программными и аппаратными ресурсами) и набора пользовательских приложений (например, библиотеки, менеджеры окон и исполняемые программы).

Линукс что это

На этом рисунке показаны ключевые принципы. Внизу стека (абстрактный тип данных, представляющий собой список элементов, организованных по принципу «последним пришёл — первым вышел») Linux находится архитектурно-зависимый код, обеспечивающий работу Linux на большом количестве аппаратных платформ (ARM, PowerPC, Tilera TILE и др.). Конечно, эта функциональность поддерживается GNU – инструментарием, обеспечивающим переносимость Linux. Что касается переносимости, то здесь Linux на голову выше других систем. Подсистема драйверов, обладающая огромными возможностями, поддерживает динамически загружаемые модули без потерь в производительности, обеспечивая модульность (в дополнение к повышенной динамичности платформы). Кроме того Linux обладает защитой на уровне ядра (в ряде схем), обеспечивающей защищенность платформы. Linux поддерживает наибольшее количество файловых систем любых ОС, что дает гибкость, обеспечиваемую модульным принципом проектирования. В Linux реализованы не только стандартные возможности планирования загрузки процессора, но и диспетчеризация в реальном времени (включая гарантированные задержки обработки прерываний). Наконец, Linux – это открытая платформа, т.е. ее исходный код доступен для просмотра и изменения практически каждому. Открытость Linux минимизирует возможность внедрения вредоносного кода, повышая, таким образом, ее безопасность. Многие компании вносят свой вклад в разработку Linux, благодаря чему можно быть уверенным, что эта платформа будет продолжать использоваться в самых различных решениях, сохраняя при этом свои ключевые особенности.

Свойства ядра Linux

Составные части операционной системы

Линукс что это

Особенности Linux

Необходимо знать, что нечетные номера версий (2.3, 2.5, 2.7 и т.д.) присваиваются экспериментальным ядрам, находящимся в разработке. Стабильные выпущенные ядра всегда имеют четные номера версий (2.4, 2.6, 2.8 и т.д.).

Также, характерными особенностями Linux как ОС являются следующие параметры:

Достоинства

В настоящее время Linux собрал вокруг себя огромное сообщество программистов, постоянно совершенствующих систему путем разработки новых версий и разновидностей Linux’овой операционной системы, также написанием разнообразных программ, работающих под Linux.

Дистрибутивы Linux

Linux имеет несколько различных версий, чтобы удовлетворить почти любой тип пользователя. В Linux каждый пользователь может удовлетворить свои потребности, выбирая необходимое распределение («дистрибутивы»). Почти каждое распределение Linux можно скачать бесплатно, записать на диск и установить. Дистрибутив — это не просто набор программ, а ряд решений для разных задач пользователей, объединённых едиными системами установки, управления и обновления пакетов, настройки и поддержки.

Самые популярные дистрибутивы:

Область применения

Linux прекрасно работает на обычных домашних и рабочих компьютерах и серверах, также существуют адаптации Linux к большинству современных процессоров, что позволяет использовать системы с ядром Linux в сетевом оборудовании, домашней «умной» технике, роботах, мобильных телефонах, различных портативных устройствах и другом оборудовании, поддерживающем программируемые операции. В конечном счёте столь широкий круг поддерживаемых устройств означает превосходную переносимость программ. Например, одно и то же приложение зачастую можно запустить с минимальными усилиями и на обычном компьютере, и на мобильном телефоне на базе Linux. Для примера: Windows и её младший брат Windows Mobile являются полностью несовместимыми платформами.

Установка Linux в VirtualBox

Установка операционной системы Linux не представляет собой сложную задачу. Linux предлагает одну из самых простых установок.
Иллюстрировать установку я буду на примере Ubuntu, пожалуй, самом известном дистрибутиве Linux. При старте пользователю дается выбор «Запустить» или «Установить» операционную систему. Если выбрать «Запустить Ubuntu», то система будет загружена в Live-режиме, т.е. без внесения изменений на жесткий диск компьютера и можно будет «пощупать» Ubuntu и решить есть ли желание использовать его в дальнейшем. В случае с выбором «Установить Ubuntu», происходит непосредственная установка.

На сайте http://ubuntu.ru/get мною был скачан образ оптического диска «Ubuntu Desktop 16.04 (32 bit)». Далее, открываю VirtualBox, и при первом запуске VirtualBox отображается основное окно программы с приветствием и активированной кнопкой «Создать» для создания новой виртуальной машины:

Линукс что это

При создании новой виртуальной машины определяются следующие параметры:

Линукс что это

Линукс что это

Тип файла, определяющий формат, желаемый использовать при создании нового жесткого диска, я оставлю без изменений VDI.

Линукс что это

Линукс что это

Затем указываются имя и размер файла. Имя я задам «Ubuntu», а размер оставлю по умолчанию 8,00 Гб.

Линукс что это

Большинство параметров, определяемых в процессе создания новой виртуальной машины, можно, при необходимости, изменить в любой момент времени.

Линукс что это

В настройках в пункте «Носители» выбираю образ оптического диска «ubuntu-16.04-desktop-i386», нажимаю «Ок» и запускаю виртуальную машину.

Линукс что это

Далее на экране появляется окно приветствия, где нужно выбрать язык. Почти все дальнейший действия будут переведены на него. Кроме того, на этом этапе предоставляется выбор «Запустить» или «Установить» Ubuntu.

Линукс что это

Для начала выберем «Запустить Ubuntu». Открывается рабочий стол Ubuntu 16.04. После знакомства с Ubuntu, можно перейти к непосредственной установке. На рабочем столе расположен значок с наименованием «установить Ubuntu 16.04 LTS».

Линукс что это

В шаге «Подготовка к установке Ubuntu», активирую оба пункта: Загрузить обновления при установке и Установить стороннее программное обеспечение, и жму на кнопку «Продолжить».

Линукс что это

Следующий шаг это разметка диска. Можно просто отформатировать весь винчестер и установить на него Ubuntu, но мной будет рассмотрен ручной вариант, поэтому я устанавливаю переключатель в положение «Другой вариант» и жму кнопку «Продолжить»

Линукс что это

В открывшемся окне, если винчестер еще не размеченный, нужно создать таблицу разделов. Для этого нажимаю кнопку «новая таблица разделов», а затем «+».

Линукс что это

Далее на экран будет выведено сообщение с вопросом «Записать изменения на диск?». Проверив всё ли правильно, жму кнопку «Продолжить». Затем выбираю часовой пояс, место нахождения, ввожу имя пользователя, имя компьютера и пароль

Линукс что это

Линукс что это

Готово. Система установлена и готова к использованию.

Линукс что это

Теперь можно начать пользоваться операционной системой, к примеру, загрузить браузер, установить дополнительное программное обеспечение, поиграть с настройками оформления или просто пользоваться рабочим столом.

Источник

Linux обзор для начинающих — основные моменты, история

Принцип работы операционной системы

ОС представляет собой набор программ, которые управляют работой компьютера. Основные функции ОС:

Первой популярной операционной системой стала Windows 95. Ее главная особенность состояла в графическом интерфейсе. Благодаря этому пользователь мог управлять компьютером с помощью курсора мыши. До этого нужно было использовать специальные команды, что было трудно доступным для понимания большинства людей.

На сегодняшний день есть множество разновидностей операционных систем. Далеко не все пользуются большим спросом, но лишь некоторые из них. Для ПК мы рассмотрим основные ОС: Windows, Mac OS, Linux. Среди мобильных устройств – основные ОС: Android, IOS, Windows Mobile.

Почему стоит сменить Windows на Linux?

А так большинство людей вполне устраивают эти операционные системы, в них есть всё, что им нужно. Но на самом деле причины использовать именно операционную систему Linux есть, и не у меня одного. Какие они? Вот мои ЛИЧНЫЕ наблюдения.

Графический интерфейс пользователя Linux

Основными и популярными графическими оболочками в Linux являются:

Особенность Linux и отличие от Windows

Основная особенность и отличие Linux от семейства операционных систем Windows состоит в том, что в Linux используется совершенно другой подход к организации файловой системы и применении совершенно других типов файловых систем.

В Windows Вы привыкли видеть логические диски C, D и так далее, в Linux таких дисков нет. Вместо этого в Linux есть корень (/) от которого все и произрастает. Все адреса файлов и каталогов начинаются именно с корня, все разделы монтируются в корень, включая физические диски (USB флешки и так далее).

Таким образом, абсолютно все физические диски и разделы объединены в единую файловую структуру, начинающуюся с корня (/).

В Linux, как уже было отмечено, используются другие файловые системы, не такие как, например, в Windows – NTFS или FAT, хотя Linux умеет работать с данными типами файловых систем.

В Linux активно используются следующие типы файловых систем:

В целом внутренняя работа систем Linux и Windows, конечно же, значительно отличается, но на сегодняшний день для рядового пользователя домашнего компьютера эти отличия практически не видны. Современный Linux – это очень удобная, уже ориентированная на обычного пользователя операционная система.

Но тем не менее Windows все равно остается самой популярной операционной системой, и как раз-таки за счет этого, самой уязвимой. Так как именно под Windows создается большинство вирусов, ежедневно «плохие» разработчики ищут уязвимости этой операционной системы с целью создать очередной вирус.

В Linux с вирусами дела обстоят намного лучше, т.е. под Linux вирусов создаётся гораздо меньше, и как результат Linux считается более безопасной и устойчивой к вирусам операционной системой.

Если говорить о программном обеспечении, то Linux настолько стал распространён, что под эту систему разрабатывается огромное количество приложений, включая самые популярные, которые есть в Windows. И, кстати, установка приложений в современном Linux стала гораздо проще, чем в Windows. Процесс установки напоминает что-то вроде установки приложений на смартфонах, т.е. все устанавливается из одной точки в один клик. То есть Вы запускаете компонент системы, который обращается к репозиториям и считывает список доступных пакетов (с описанием, с оценками, с комментариями других пользователей), а Вы просто кликаете на тот, который Вам нужен и все. Конечно, такой функционал есть не во всех дистрибутивах Linux, но в самых популярных установка происходит именно так.

Также главным отличием от Windows является то, что Linux — это абсолютно бесплатная операционная система с открытым исходным кодом. Любой разработчик может доработать ее и создать на ее основе свою собственную систему на абсолютно законных правах. Все программное обеспечение в Linux в основном также бесплатное. Linux можно свободно распространять и использовать. Поэтому и существует огромное количество дистрибутивов Linux, а что это такое, я сейчас расскажу.

Что такое дистрибутив Linux?

Дистрибутив Linux – это разновидность операционной системы Linux. Дистрибутивов Linux много, так как любой разработчик может использовать ядро Linux и создать свою собственную операционную систему. Таким образом, разработчики объединяются в сообщества и создают операционные системы на базе ядра линукс, которые и являются дистрибутивами. В дистрибутивы включают все необходимое программного обеспечение для работы, и зачастую в большинстве дистрибутивов есть все, что нужно для того чтобы начать пользоваться системой сразу после установки, в отличие от той же Windows, где нужно после установки системы еще доустановить необходимое для работы программное обеспечение.

Также дистрибутивы могут создавать и поддерживать различные компании, и такие дистрибутивы уже могут быть платными.

Дистрибутив Linux может быть основан на другом дистрибутиве, и, таким образом, рождается бесчисленное множество разновидностей дистрибутивов, которые основаны друг на друге и все они имеют одну базу, одну основу.

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

Дистрибутивы Linux можно условно разделить на две очень крупные ветки развития, два направления. Здесь я имею в виду деление по способу организации и управления программным обеспечением, т.е. пакетами.

Существуют две популярные системы управления пакетами:

Если Вы начинающий пользователь Linux, то Вам не нужно смотреть, на какой системе управления пакетами основан дистрибутив, Вам нужно смотреть на дистрибутив как на конечный продукт, т.е. для каких целей он разработан. Я привел это деление только для того, чтобы Вы знали, что оно существует, оно практически никак не скажется на Вашем знакомстве с операционной системой Linux. Единственное, когда Вы с этим столкнетесь — это тогда, когда будете устанавливать стороннее программное обеспечение, которого нет в стандартных репозиториях. Так как Вам нужно будет выбирать тот тип пакета для установки, который соответствует Вашей системе.

Перед тем как переходить на Linux, Вам нужно узнать, для чего создан и предназначен конкретный дистрибутив. Так как существуют, например, дистрибутивы, не имеющие графической оболочки, т.е. серверные системы, существуют дистрибутивы, которые управляются исключительно в командной строке, и созданы для продвинутых пользователей, но в то же время существуют максимально простые и ориентированные на пользователя дистрибутивы, которые не уступают Windows.

Подробней про дистрибутивы Linux мы поговорим в следующем материале.

Виды операционных систем

Чаще всего, при покупке компьютера, операционная система уже установлена. Большинство из вас даже не задувается о том какая она. А знать свою систему очень важно, хотя бы потому, что разные ОС по-разному работают, настраиваются, и даже рабочий стол у них разный.

Существуют три основные и самые популярные операционные системы:

Microsoft Windows (Microsoft – это фирма, выпускающая эту систему, а Windows (виндовс), в переводе с английского, означает – окна):

Apple Mac Os X (сокращенно ее называют Mac, а Apple – это фирма (в переводе с английского, означает — яблоко);

Каждая операционная система имеет свой вид, так называемый графический интерфейс (от англ. – лицо).

Первые ОС, под названием MS-DOS, не имели графического интерфейса. Работа в них была только через командную строку при помощи клавиатуры. Никаких мышек тогда не было, да и не нужны они были. Необходимо было знать и запоминать много команд на английском языке. А на мониторе были только цифры и буквы, в лучшем случае графики. Простому пользователю все это было не понятно и не интересно.

В середине 1980-х годов компания Microsoft создала операционную систему Windows, и началась новая эра, благодаря которой, мы с вами теперь на компьютере писать письма, книги, работать с фотографиями, картинками, создавать свои фильмы, сайты, «гулять» по интернету и учиться новым наукам и ремеслам.

Семейство Windows 9x, в которых уже могли работать такие, как мы с вами:

Семейство Windows NT

Семейство ОС для смартфонов:

Это только семейство Windows, и то еще не все. Остальные вам никогда и не встретятся, т.к. они не предназначены для домашнего пользования.

Вам, скорее всего, знакомы только эти:

1. Debian и другие Deb системы

Эта группа включает дистрибутивы, основанные на Debian и другие, использующие систему управления пакетами Deb. Эта система пакетами была разработана для Debian и сейчас довольно часто используется популярных дистрибутивах, это сам Debian, Ubuntu, LinuxMint, AstraLinux, Elementary и множество других. Эти дистрибутивы используют оригинальное ядро Linux с несколькими исправлениями, которые только убирают ошибки.

2. Red Hat и другие Rpm системы

Пока сообщество разрабатывало систему управления пакетами Deb, компания Red Hat создала собственный менеджер пакетов – Rpm. Тогда все традиционные дистрибутивы Linux разделились на два лагеря – использующие deb и rpm. Сейчас обе системы управления пакетами хороши и нельзя сказать что она хуже другой. Вы можете почитать подробное сравнение Deb vs Rpm в статье по ссылке. Сейчас систему управления пакетами RPM используют такие дистрибутивы, как CentOS, Fedora, Red Hat, OpenSUSE и другие менее популярные.

3. Arch Linux и основанные на нем

Спустя некоторое время, появилось еще несколько дистрибутивов не использующие ни Deb ни Rpm. Один из таких дистрибутивов – ArchLinux. Тут применяется собственный пакетный менеджер pacman, который позволяет делать все то же самое что и deb, но в дополнение реализована простая система скользящих релизов. Благодаря ей в дистрибутиве всегда самое новое программное обеспечение. Arch быстро набрал популярность и на нем было основано несколько дистрибутивов – Manjaro, Antergos, Cinnarch и много других.

4. Gentoo

Многие пользователи хотели иметь возможность компилировать свою систему сами, чтобы выбрать какое программное обеспечение устанавливать, а также получить оптимизацию под свое оборудование. Поэтому был создан дистрибутив Gentoo на основе ядра Linux, в котором используется пакетный менеджер emerge. Тут вы тоже получаете скользящие релизы, а также возможность относительно просто скомпилировать вашу операционную систему на своем компьютере. Пакетный менеджер emerge уже содержит готовые сборочные скрипты, поэтому ничего дописывать самому не придется.

5. Linux From Scratch

Это не совсем дистрибутив, LFS – это набор инструментов, которые позволяют вам собрать собственный дистрибутив на основе ядра Linux. Вы просто берете ядро, берете исходники нужных программ, все программ начиная от системы инициализации и командной оболочки и заканчивая окружением рабочего стола, собираете все это, настраиваете и получаете свой дистрибутив.

6. ChromeOS

Еще позже Google выпустила свою операционную систему для нетбуков на ядре Linux. Фактически ChromeOS основана на Gentoo, но они настолько разные, что их невозможно объединить в один пункт. В этой системе Google реализовала такую идею, как облачная операционная система Linux. Ваше рабочее пространство – это браузер. Здесь вам все предстоит делать в браузере – редактировать документы, работать с видео и даже терминал Linux в браузере. Файлы преимущественно хранятся в облаке. Но это все еще Linux.

7. Android

Не все знают, но самая популярная операционная система для мобильных телефонов тоже использует ядро Linux. От Linux здесь осталось только ядро и еще несколько моментов, все остальное же Google заполонила своими различными фреймворками, Java и так далее. Возможности Linux ограничены, той же системой безопасности Bionic, которая запрещает загрузку динамических библиотек, но в терминале можно работать с пересобранными командами Linux, а в chroot окружении можно запустить полноценный Linux дистрибутив.

8. Slackware

Достаточно старый дистрибутив Linux, который в свое время считался самым Unix’овым. Раньше на нем было основано несколько дистрибутивов, таких, как Blacktrack, Slax, VectorLinux и другие. Но потом он медленно потерял свою популярность. Здесь используется собственный менеджер пакетов, который по возможностям не дотягивает до deb и rpm. Не поддерживается разрешение зависимостей, а команды для удаления и установки пакетов находятся в разных утилитах.

9. OpenWrt и основанные на нем

OpenWrt – это операционная система Linux 2017 для роутеров и маршрутизаторов на базе ядра Linux. Кроме самого ядра Linux, она поставляется урезанной версией библиотеки Си, стандартными утилитами Linux и BusyBox. Система занимает мало места и оптимизирована специально под маршрутизаторы. Большинство настроек выполняются в командной строке.

10. Tizen и другие IoT

Операционная система на базе ядра Linux, предназначенная для различных телевизоров, умных часов и других умных гаджетов. Система разрабатывается на основе ядра Linux компанией Samsung и уже сейчас достаточно часто используется. Существуют свои приложения и SDK для их разработки.

Какую выбрать ОС?

Для того, чтобы определиться с выбором «операционки» компьютера, нужно исходить из трех параметров:

Для простоты использования, приятной картинки и удобства в установке программ лучше всех подойдет Windows. Linux станет отличным инструментом для любителей изучать все процессы работы компьютера. Для работы лучше не найти ОС, чем Mac OS. Многие программисты, видеомонтажеры, специалисты по звуку используют MacBook Pro на базе Mac OS.

Со смартфонами все проще. Если у вас на руках iPhone, в выборе ОС вы ограничены. Практически все современные телефоны выпускаются на Android. Windows Mobile – самый редкий представитель среди мобильных гаджетов.

Как определить свою операционную систему:

Посмотрите этот видеоролик, определите свою операционную систему, и напишите в комментарии, какая ОС стоит на вашем компьютере.

Чтобы запустить видео кликните левой кнопкой мыши по его картинке или на значок треугольника.

1. Операционная система Linux не имеет вирусов

Первое, что привлекает многих, и меня лично – это отсутствие вирусов. Тут некоторые говорят, что вирусов нет в Linux только потому, что она мало распространена и хакеры просто ленятся писать их. Не буду спорить, но не совсем согласен с этим.

Linux стоит практически на всех серверах и на компьютерах миллионов обычных пользователей. Если бы было всё так просто, то умников написать вирусы нашлось бы не мало.

Тем более взлом серверов – это первое любимое занятие хакеров. Да, есть руткиты, при помощи которых ломают Linux сервера, но для домашних компьютеров это не актуально.

Нет, версии антивирусов для Linux есть у каждого антивируса, но они предназначены для поиска и обезвреживания виндозных вирусов.

2. Операционная система Linux бесплатна

Не стоит думать, что все “линуксоиды” жмоты, и именно поэтому они пользуются Linux. Но дело в том, что ПОЛНАЯ версия той же Windows 7 или 10 стоит ОЧЕНЬ хорошо. И по лицензии вы можете установить одну версию на один компьютер. А если у меня 3 компьютера?

Именно поэтому многие ноутбуки продают с предустановленной Linux, чаще всего UBUNTU.

К тому же вы должны покупать каждую НОВУЮ версию Windows, если хотите быть в теме новых технологий от Microsoft. А это тоже хорошие деньги.

Но даже это не проблема, можно было бы купить и забыть. Но Windows всего одна, а Linux дистрибутивов превеликое множество, и их можно скачивать, устанавливать и тестировать БЕСПЛАТНО. И тут мы переходим к третьему преимуществу операционной системы Linux.

3. Операционная система Linux многообразна

Существует несколько основных модификаций операционной системы Linux и множество их модификаций на любой вкус. Кроме этого для каждой версии можно установить одно из множеств рабочих окружений. Хочешь, поставь Gmone, хочешь KDE, хочешь LXDE и так далее, а можешь всё сразу вместе и выбирать при входе в систему.

В общем, для людей творческих есть просто ОГРОМНОЕ поле для экспериментов. Но и это ещё не всё. Все программы для Linux тоже бесплатны и при этом не содержат ЧУДО тулбаров, которые сегодня так модно встраивать в софт.

4. Операционная система Linux имеет репозиторий

Да, в Windows тоже много программ, и наверное даже больше, чем в Linux. Но мне нравится в Linux сам подход установки программ, которые можно установить из проверенного репозитория их менеджера программ. И не нужно ползать по варезным сайтам, которые кишат вирусами и непристойными баннерами.

Конечно, при переходе с Windows, может быть непривычно, что аналоги программ называются по другому, но со временем привыкаешь.

5. Операционная система Linux более удобна

А это моё личное мнение. Я работал и там и там, и могу сказать, что интерфейс того же Gnome, намного удобнее, чем Windows 7.

Например, при установке программ, в Linux каждая программа занимает в меню нужный раздел и её потом очень легко найти.

В Windows же всё валится в кучу, и если у вас много программ, то найти потом нужную очень сложно. И таких МЕЛОЧЕЙ очень много, но именно они в конечном счёте создают удобство при работе.

6. Операционная система Linux имеет все драйвера

Бывало наверное и у вас, что при подключении нового оборудования, Windows салютовала, что нужного драйвера нет и оборудование не работает.

В Linux все драйвера вшиты в ядро и как правило любое новое оборудование сразу начинает работу. Если сунуть Windows 7 новую для неё флешку, то ставить драйвера она будет пару минут, Linux же подключит её через 2 секунды.

А бывает ещё такая смешная ситуация. Вы ставить Windows первый раз, а она не находит драйвера для сетевой карты. Но чтобы скачать для неё драйвер, нужно подключиться к интернету. Замкнутый круг.

В Linux я с таким не сталкивался никогда, сетевая карта всегда работала из коробки.

7. Операционная система Linux шифрует диск

Да, в Windows тоже это можно сделать при помощи сторонних программ, но всё это сложнее и мало кто об этом задумывается, пока не будет уже поздно.

Наверное список можно было бы продолжить, но даже этого достаточно для того, чтобы вы поняли, почему операционная система Linux стоит на всех моих компьютерах.

Но с другой стороны я не хочу никого убеждать переходить на Linux, так как это как с религией, человек должен дойти до этого сам. И тогда это будет его решение, с которым он будет жить и трудиться.

Вопросы и ответы

Если вы не нашли в статье ответ на свой вопрос, задайте в сервисе “Вопросы и ответы”. Уведомление об ответе обязательно придет к вам на почту. Отвечают авторы и другие читатели!

Линукс что это

операционные системы Windows 10

Линукс что это

операционные системы РОСА

Линукс что это

операционные системы FreeBSD

Линукс что это

операционные системы Fedora

Линукс что это

операционные системы Elementary OS

Линукс что это

операционные системы Chrome OS

Линукс что это

операционные системы OpenSuse

Линукс что это

операционные системы Ubuntu

Линукс что это

операционные системы MacOS

Линукс что это

операционные системы Linux Mint

Альтернативные операционные системы для ПК

Кроме основных ОС существует множество других вариантов установки операционки. Каждая из них имеет свои отличия и назначение.

Важно: мы представили только список ОС, с характеристиками и особенностями каждой из них вы можете ознакомиться самостоятельно.

Стоит отметить среди представленного списка ChromeOS, которая сейчас популярна в области образования. Она бесплатна, работает на слабых компьютерах, не требует особых ресурсов и знаний для ее настройки.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *