Операционная система линекс инструкция по применению

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

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

Содержание

  • Что такое Linux?
  • Зачем использовать Linux вместо Windows?
  • Какой дистрибутив Linux стоит использовать?
  • Что такое среда рабочего стола?
  • Как подключиться к интернету
  • Лучшая система для просмотра веб-страниц
  • Есть ли достойные офисные пакеты для Linux?
  • Как устанавливать программы в Linux?
  • Командная Строка Linux
  • Еще несколько фактов о Linux
  • Резюме

Что такое Linux?

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

На Linux работает все: от вашего телефона до вашего умного холодильника.

В пользовательской среде Linux является альтернативой коммерческим операционным системам, таким как Windows.

Зачем использовать Linux вместо Windows?

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

  1. ОС Linux поддерживается на старых компьютерах. Хотя Windows XP по-прежнему будет работать на старом оборудовании, она больше не поддерживается, поэтому обновления для системы безопасности отсутствуют. Существует ряд дистрибутивов Linux, которые создаются специально для старого оборудования и регулярно поддерживаются и обновляются.
  2. Некоторые дистрибутивы Linux и среды рабочего стола теперь более привычны для обычных пользователей компьютеров, чем Windows 8 и Windows 10. Если вам нравится внешний вид Windows 7, почему бы не попробовать Linux Mint, например.
  3. Объем, занимаемый Windows 10 огромен. Типичный дистрибутив Linux занимает чуть более 1 гигабайта, хотя некоторые из них могут занимать всего несколько сотен мегабайт. Также Windows требует по крайней мере пропускной способности уровня DVD.
  4. Linux поставляется с бесплатным программным обеспечением, и вы можете изменять и использовать это программное обеспечение по своему усмотрению.
  5. Linux всегда был более безопасным, чем Windows, так как для него существует очень мало вирусов, хотя интернет вещей и был под угрозой в последнее время.
  6. Linux работает лучше, чем Windows, во многих отношениях, и вы можете выжать из него все ресурсы до последней капли на более старом оборудовании, имеющем ограничения.
  7. Конфиденциальность. Windows регулярно собирает данные, полученные с помощью Cortana и поиска в целом. Хотя это вещь не новая, так как Google делает то же самое, но вы можете быть более чем уверены, что Linux так не поступает, особенно если вы выбираете бесплатный дистрибутив.
  8. Надежность. Когда программа зависает в Linux вы можете закрыть его довольно легко. Когда программа зависает в Windows, даже когда вы пытаетесь запустить Диспетчер задач, чтобы закрыть эту программу, это не всегда получается.
  9. Обновления. Windows очень навязчива со своей политикой обновления. Сколько раз вы включали компьютер, чтобы распечатать билеты на концерт или другую важную информацию, чтобы увидеть экран с установкой обновления 1 из 450?
  10. Вариативность. Вы можете заставить Linux выглядеть, ощущаться и вести себя именно так, как вы хотите. С Windows, компьютер ведет себя так, как в Microsoft думают, что вы хотите.
    Если вы все еще не определились, прочтите это руководство, которое поможет вам решить, подходит ли вам Linux.

Какой дистрибутив Linux стоит использовать?

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

Так какой дистрибутив Linux выбрать? Вот основные из них:

  • Linux Mint: не требует продвинутого опыта работы с компьютером, прост в установке, прост в использовании и имеет знакомый рабочий стол для пользователей Windows 7
  • Debian: если вы ищете действительно бесплатный дистрибутив Linux без проприетарных драйверов, прошивки или программного обеспечения, то Debian для вас. Старичок среди дистрибутивов.
  • Ubuntu: современный дистрибутив Linux, который прост в установке и использовании
  • openSUSE: стабильный и мощный дистрибутив Linux. Не так просто установить, как Mint и Ubuntu, но тем не менее является очень хорошей альтернативой
  • Fedora: самый современный дистрибутив Linux со всеми новыми концепциями, включающимися при первой же возможности
  • Mageia: восстал из пепла некогда великой Mandriva Linux. Прост в установке и использовании
  • CentOS: как и в Fedora, CentOS основан на коммерческом дистрибутиве Linux, Red Hat Linux. В отличие от Fedora, он создан для стабильности
  • Manjaro: основанный на Arch Linux, Manjaro обеспечивает отличный баланс между простотой использования и современным программным обеспечением
  • LXLE: на основе легкого дистрибутива Lubuntu он представляет из себя полнофункциональный дистрибутив Linux для старого оборудования
  • Arch: rolling release дистрибутив означает, что вы не должны устанавливать новые версии операционной системы, потому что оно самостоятельно обновляется. Сложнее для нового пользователя в освоении, но очень мощный
  • Elementary: Linux для людей, которым нравится интерфейс в стиле Mac

Более подробно про лучшие дистрибутивы для новичков вы можете прочесть в этой статье.

Что такое среда рабочего стола?

Типичный дистрибутив Linux состоит из нескольких компонентов.

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

Многие из этих элементов объединены вместе, чтобы создать так называемую среду рабочего стола.

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

Наиболее распространенные среды рабочего стола включают Cinnamon, GNOME, Unity, KDE, Enlightenment, XFCE, LXDE и MATE.

  • Cinnamon – это более традиционная среда рабочего стола, которая похожа на Windows 7 с панелью внизу, меню, значками в системном трее и значками быстрого запуска.
  • GNOME и Unity довольно похожи. Они представляют собой современные среды рабочего стола, которые используют концепцию значков лаунчеров и отображения в стиле панели мониторинга для выбора приложений. Есть также основные приложения, которые хорошо интегрируются с общей темой среды рабочего стола.
  • KDE – это довольно традиционная среда рабочего стола, но она имеет огромное количество функций и основной набор приложений, которые легко кастомизируется большим количеством настроек.
  • Enlightenment, XFCE, LXDE и MATE – довольно легкие среды рабочего стола с панелями и меню. Все они легко настраиваются.

Как подключиться к интернету

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

  1. Где-то на панели находится значок сети. Нажмите на него, и вы увидите список беспроводных сетей.
  2. Кликните на нужную сеть и введите ключ безопасности.

Лучшая система для просмотра веб-страниц

На Linux есть все лучшие браузеры, включая Chrome, Chromium, Firefox и Midori.

На нем нет Internet Explorer, в прочем кому он нужен? В браузере Chrome есть все, что вам может понадобиться.

Есть ли достойные офисные пакеты для Linux?

Нет никаких сомнений, что Microsoft Office – это премиальный продукт, и это очень хороший инструмент, который трудно повторить и превзойти качества данного продукта.

Для личного использования и для малого и среднего бизнеса вы можете утверждать, что Google Docs и LibreOffice являются хорошими альтернативами и за меньшую стоимость.

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

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

Как устанавливать программы в Linux?

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

Как правило, если пользователь Linux хочет установить пакет, он запускает инструмент, именуемый менеджер пакетов.

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

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

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

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

  • Например, Ubuntu, Linux Mint и Debian используют менеджер пакетов apt-get.
  • Fedora и CentOS используют менеджер пакетов yum.
  • Arch и Manjaro используют Pacman.

Более подробно об установке приложений в Linux вы можете узнать из этой статьи.

Командная Строка Linux

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

Хотя полезно изучить основные команды Linux (то же самое можно сказать и о командах DOS в Windows), нет необходимости делать это.

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

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

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

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

В то время как вы работаете в терминале, вы должны также понимать в переключении пользователей с помощью команды su.

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

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

Еще несколько фактов о Linux

  • Live Linux DVD или USB позволяет запускать Linux без установки на жесткий диск. Это позволяет тестировать Linux диск перед переходом на него, а также хорошо для случайного пользователя.
  • Каждый дистрибутив Linux устанавливается с помощью своего установщика, который является программой, которая поможет вам произвести настройку и установку Linux.
  • Когда пользователь устанавливает Linux, он может либо установить его единственной системой, либо установить его вместе с Windows.
  • Linux берет пальму первенства, когда дело доходит до воспроизведения аудиофайлов. Есть десятки отличных звуковых приложений, и вы можете выбрать одно или несколько, которые вам нравятся.
  • К сожалению, на Linux нет Outlook.
  • Самое замечательное в Linux то, что вы можете заставить его выглядеть и ощущаться так, как вы хотите.
  • Каждая среда рабочего стола Linux работает немного по-разному, и поэтому познание всех баз займет некоторое время.

Резюме

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

Это должно дать вам хорошую основу для дальнейшего движения.

Время на прочтение
14 мин

Количество просмотров 185K

Привет, Хабр!

В последние несколько лет все больше и больше людей ищут возможность войти в ИТ или поглубже изучить 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. Вкратце о главном

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

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

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

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

  • RPM-based (используют формат пакетов .rpm)
    RedHat Enterprise Linux, CentOS, Fedora

  • DEB-based (используют формат пакетов .deb)
    Debian, Ubuntu, Astra Linux

Стоит отметить, что существует великое множество различных дистрибутивов на любой вкус и цвет. Их невозможно даже сосчитать, так как практически каждый представитель сообщества может собрать свой собственный дистрибутив на основе ядра 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 (BIOS / UEFI)

Подключение

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

Подключиться к 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

Подключаться к 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

Читать подробнее: 

  • SSH

  • Как подключиться по SSH

  • Лучшие SSH клиенты для Windows, Linux и MacOS

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

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

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

Существует несколько форматов пакетов, однако наибольшее распространение получили .deb и .rpm. Рассмотрим операционные системы и менеджеры пакетов для данных форматов:

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

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

Читать подробнее: Популярные пакетные менеджеры Linux

Практика

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

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

# руководство (справочная информация)
man <utility> # просмотр справочной информации по утилите
<utility> --help # просмотр справочной информации по утилите

# менеджер пакетов apt (.deb)
sudo apt install nano # установка пакета
sudo apt remove nano # удаление пакета
sudo apt autoclean # удаление кэша пакетов

# менеджер пакетов yum (.rpm) - для dnf команды полностью аналогичны
sudo yum install nano # установка пакета
sudo yum remove nano # удаление пакета
sudo yum clean all # удаление кэша пакетов

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

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

Типы файлов

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

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

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

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

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

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

Читать подробнее: Типы файлов в Linux

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

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

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

  • /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

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

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

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

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

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

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

Пример: rwx r— — означает, что у владельца есть права на все, у группы владельца доступ только на чтение, а у остальных доступа нет. В двоичной системе счисления эти права выглядят как три группы цифр – 111 100 000, что равносильно трем цифрам 7 4 0 в восьмеричной и десятичной системах счисления.

Читать подробнее: 

  • Владельцы файлов и папок в Linux

  • Команда chmod в Linux

Практика

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

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

# руководство (справочная информация)
man <utility> # просмотр справочной информации по утилите
<utility> --help # просмотр справочной информации по утилите

# навигация
ls -la <dir> # просмотр содержимого каталога (в том числе прав доступа)
cd <dir> # переход в каталог

# каталоги
mkdir <dir> # создание каталога
rmdir <dir> # удаление пустого каталога
rm -rf <dir> # удаление каталога с файлами

# файлы
cat <file> # вывод файла в консоль
less <file> # постраничный вывод файла
tail <file> # вывод последних строк («хвоста») файла
vi <file> # редактиврование файла текстовым редактором vi
nano <file> # редактирование файла текстовым редактором nano
cp <file> <dir> # копирование файла в каталог
mv <file> <dir> # перемещение файла в каталог (для переименования переместите файл в тот же каталог)
rm <file> # удаление файла
rm -rf <dir>/* # удаление всех файлов в каталоге

# права доступа
chown <user> <dir> # установить пользователя владельцем каталога
chown <user>:<group> <dir> # установить владельца и группу владельца каталога
chmod 644 <file> # установить права доступа rw- r-- r-- (чтение и запись для владельца, чтение для группы владельца, чтение для остальных пользователей)
сhmod 740 <file> # установить права доступа rwx r-- --- (чтение, запись и исполнение для владельца, чтение для группы владельца)
chmod u+w <file> # добавить владельцу право на запись файла

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

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

Процессы

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

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

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

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

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

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

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

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

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

Читать подробнее: Процессы в Linux

Практика

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

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

# руководство (справочная информация)
man <utility> # просмотр справочной информации по утилите
<utility> --help # просмотр справочной информации по утилите

# процессы
top
sudo ps aux
sudo kill -9 <pid> # убийство процесса по PID
sudo killall -s 9 <name> # убийство всех процессов по имени

# утилиты для мониторинга использования ресурсов
htop # использование ресурсов по процессам (может потребоваться установка пакета htop)
nmon # использование процессора по ядрам, памяти, дисков и др. (может потребоваться установка пакета nmon)
iostat # использование процессора в среднем по ядрам и чтение/запись по дискам

# ЦПУ
lscpu # общая информация
cat /proc/cpuinfo # подробная информация

# ОЗУ
cat /proc/meminfo # общая информация и потребление
free -h # удобное представление на основе данных из файла meminfo
ps aux --sort -rss # использование памяти по процессам

# диски
lsblk # общая информация
df -h # просмотр занятного места по разделам
du -сh <dir> # просмотр занятого места в каталоге

# сеть
/sys/class/net/<interface>/speed # просмотр максимальной скорости интерфейса

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

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

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

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

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

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

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

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

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

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

Что такое systemd unit?

SystemD Unit – это обычный текстовый файл в стиле ini, который декларативно описывает информацию о службах .service, устройствах .device, целях запуска .target и других типах модулей systemd.

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

  • 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: только самое главное

  • Понимание systemd юнитов

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

Практика

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

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

# руководство (справочная информация)
man <utility> # просмотр справочной информации по утилите
<utility> --help # просмотр справочной информации по утилите

# просмотр юнитов
systemctl # список юнитов (это псевдоним команды systemctl list-units)
systemctl --type=service # юниты типа сервисы
systemct | grep <keyword> # юниты, содержащие ключевое слово (полезно для быстрого поиска)
systemctl cat <unit> # описание юнита

# управление юнитами
systemctl status <unit> # статус (состояние) юнита
sudo systemctl daemon-reload # перезагрузка конфигурационных файлов в systemd
sudo systemctl enable <unit> # включение сервиса в автозагрузку
sudo systemctl disable <unit> # отключение сервиса из автозагрузки
sudo systemctl start <unit> # запуск
sudo systemctl stop <unit> # остановка

# журналы логов
journalctl -u <unit> # чтение логов по юниту
journalctl -u <unit> --since today # чтение логов по юниту со смены дня 

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

Сеть

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

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

# руководство (справочная информация)
man <utility> # просмотр справочной информации по утилите
<utility> --help # просмотр справочной информации по утилите

# просмотр сетевых настроек сервера
ip a # IP адреса
ip n # ARP таблица
cat /etc/resolv.conf # конфигурация DNS
sudo netstat -tulpn # открытые порты
sudo ss -tulpn # открытые порты (молодежный вариант)

# диагностика сетевых проблем
nslookup <hostname> # проверка разрешения DNS имени
ping <host> # отправка ICMP пакетов до хоста
traceroute <host> # трассировка до хоста UDP пакетами
telnet <host> <port> # проверка доступности TCP порта на хосте
nmap <host> # сетевое сканирование хоста
nmap -p T:<port> <host> # проверка доступности TCP порта на хосте (молодежный вариант)
nmap -p U:<port> <host> # проверка доступности UDP порта на хосте (молодежный вариант)

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


Все статьи серии:

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

  2. Основы виртуализации (обзор)

  3. Основы контейнеризации (обзор Docker и Podman)

  4. Основы мониторинга (обзор Prometheus и Grafana)

Этот материал написан посетителем сайта, и за него начислено вознаграждение.

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

Linux – семейство операционных систем с открытым исходным кодом. Ядро Линукс поддерживает добавление и удаление программных компонентов без остановки системы. Эти компоненты называют динамически загружаемыми модулями ядра. Их можно добавлять в операционную систему по необходимости, в любое время. Одна из особенностей Линукс — возможность выступать операционной системой для других операционных систем (в качестве гипервизора). Гипервизор – это программа, позволяющая создавать на компьютере виртуальные ПК с разными операционными системами, которые будут распознаваться в локальной сети. Например, это знаменитая Oracle VirtualBox.

Другая особенность — нечетные номера версий, например, 2.1 или 2.9 присваиваются экспериментальным, находящимся в разработке ядрам. Стабильные версии обычно имеют чётные номера, например, 2.2 или 2.6.

рекомендации

Дешевая 4070 MSI — надо брать

-15000р на Ryzen 3950X — пора брать

Ищем PHP-программиста для апгрейда конфы

4080 Gigabyte Gaming дешево в Регарде

3070 Gigabyte дешевле 50 тр в Ситилинке

Компьютеры от 10 тр в Ситилинке

<b>13900K</b> в Регарде по СТАРОМУ курсу 62

Много 4080 от 100тр — цены в рублях не растут

3060 дешевле 30тр цена — как при курсе 68

13700K дешевле 40 тр в Регарде

Первые Линукс изначально были написаны программистами для самих себя. Позднее увеличился выбор программ и появились различные графические интерфейсы (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. Их последние годы внедряют в государственных учреждениях.  

История развития UNIX-систем. Linux является UNIX-совместимой, но основана на собственном исходном коде, написанном в октябре 1991 года Линусом Торвальдсом, бывшим в то время студентом.

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

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

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

  • Для каждой версии Линукс существуют специальные репозитарии – хранилища бесплатных программ на все случаи жизни.
  • Надежность: Линукс могут годами работать без зависаний и перезагрузок, чего не скажешь о других операционных системах.
  • Безопасность: для этой операционной системы отсутствуют вирусы, поскольку каждое важное действие требует подтверждения со стороны пользователя. А для Виндовс ежегодно появляются сотни новых вирусов, антивирусы постоянно отъедают часть ресурсов ОС, требуют трафик для обновления антивирусных баз, тратят уйму времени на сканирование жёсткого диска на вирусы.
  • Открытый исходный код даёт практически неограниченные возможности по настройке ОС под требования пользователя и его задачи.
  • Малое число ошибок и зависаний по сравнению с остальными ОС.
  • Потребляет мало системных ресурсов.
  • Возможность запуска с флешки. Она пригодится, например, при проверке на битые пиксели ноутбука без ОС. Так я обычно подключаю две флешки, первую с Линукс (подойдёт любая версия), а вторую с картинками и видео для проверки на битые пиксели, муар и т.д.
  • Отсутствие реестра, который у Windows постоянно засоряется и требует периодической очистки. В Linux конфигурации всех программ находятся в папке etc.
  • Отсутствие сбора данных, как у Виндовс или Андроид («большой брат» не будет следить за каждым вашим шагом, а потом присылать горы спама с целевой рекламой).
  • Множество бесплатных программ, написанных энтузиастами. Платные программы тоже есть, поэтому выбор за Вами.

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

  • Новичкам её сложнее освоить, поскольку перед глазами у большинства людей дома, в школе и на работе, установлена Windows. А интерфейс большинства версий Линукс серьёзно отличается. 
  • Необходимость работы с консолью и терминалом, что отпугивает многих новичков. Консоль – управление ОС через ввод теста на чёрный экране и там же отображаются ответы системы. Терминал – более современный аналог консоли, имеющий графический интерфейс, отображается в виде окна на фоне рабочего стола Линукс. Это аналоги командной строки в DOS.
  • Часто возникают сложности при настройке принтеров. С каждым годом значимость этой проблемы уменьшается, но она всё ещё актуальна.
  • Для работы многих программ требуются права доступа. Это означает необходимость ввода пароля по несколько раз в день. Поэтому стоит придумать легко запоминающийся пароль и не слишком длинный.
  • Малое количество совместимых игр и программ (по сравнению с Windows). На текущий момент, это основная причина, почему многие пользователи Виндовс не переходят на Линукс. Есть, конечно, специальные программы-эмуляторы, позволяющие запускать большинство программ, написанных для Виндовс, но от этого страдает производительность.
  • Могут быть проблемы с переносом программ из одной версии Линукса в другую.
  • Требуется интернет для обновления пакетов. Многие программы в Линукс взаимодействуют друг с другом и для обновления одной из них придётся обновлять и все остальные.

Пример консоли (нет графического интерфейса)

Пример терминала (есть графический интерфейс)

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

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

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

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

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

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

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

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

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

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

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

Для серверов

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

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

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

Пример рабочего стола Линукс

Пример рабочего стола Линукс

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

Этот материал написан посетителем сайта, и за него начислено вознаграждение.

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

Мы поговорим о настройке системы, безопасности, обновлениях, журналах, очистке, резервном копировании и других подобных вещах. Я не претендую на звание эксперта в этой области. Я так делаю в своей системе и предлагаю делать вам, но это всего лишь мое мнение, вы и другие пользователи могут считать по-другому. Статья использование linux ориентирована на обычных пользователей, а не системных администраторов и программистов. Но я думаю, что вы можете найти что-то полезное для себя в этой статье.

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

Если система ломается — то это очень неприятно, вы не можете выполнить свою работу, теряете данные и начинаете нервничать. Поэтому я выбираю и рекомендую новичкам выбирать стабильные дистрибутивы.Не ArchLinux, который не известно как себя поведет при следующем обновлении, а Ubuntu, Mint, OpenSUSE и другие дистрибутивы в этом роде. Для экспериментов можно установить дополнительную операционную систему или использовать виртуальную машину, но основная система должна быть рабочей. Всегда. А теперь пройдемся по пунктам как этого достичь, кроме того, конечно, что вы будете использовать стабильный дистрибутив.

1. Настройка системы

Многие пользователи могут неделями настраивать графические интерфейсы, конфигурации, и другие параметры своей системы. Я их понимаю, я сам таким был, вспомнить ту же работу с Gentoo, когда на первую установку до минимально рабочего состояния с графическим интерфейсом уходило до двух дней при медленном интернете или мои попытки настроить оконный менеджер Awesome. Но это отнимает слишком много времени. И если случится какая-либо непредвиденная ситуация, то вам придется все это делать заново или вы будете чувствовать просто дикий дискомфорт от того, что работаете в непривычном окружении.

Если приводить пример с целой системой, то обновление может легко сломать все ваши наработки, отключением поддержки одной функции или заменой ее на другую, тот же переход на Systemd, или если продолжить аналогию с Awesome, то обновят разработчики версию Lua, языка на котором вы писали конфигурационный файл, и вам придется переписывать его заново.

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

2. Обновление

Обновления — это тоже очень важный момент, с ними вы получаете новое программное обеспечение (иногда), и самое главное исправление проблем с безопасностью, а также, возможно, проблемы с системой. Но как показывает практика, если вы обновляетесь достаточно часто, даже очень часто, то риск сломать систему при обновлении намного ниже, особенно в стабильном дистрибутиве. И вы же не хотите пропустить обновление программ? Поэтому обновляйте систему, как можно чаще, можно даже настроить обновление Linux с помощью утилиты ucare-systemcore, если вас интересует использование ос linux основанной на Debian.

3. Программное обеспечение и драйвера

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

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

Но для получения лучшей производительности в играх проприетарные драйвера придется установить. Но тогда нужно забыть про самое новое ядро. Если вы собираетесь устанавливать свежие версии ядер из kernel.org или ppa или других источников, то заметьте, что с проприетарными драйверами они работать не будут, потому что драйвера еще не рассчитаны на эту версию ядра. Так что либо одно, либо другое.

4. Очистка системы

Время от времени систему нужно чистить. Конечно, она не заваливается всяким мусором, как Windows, но со временем растет количество лог-файлов, размер кєша менеджера пакетов, количество ненужных больше зависимостей, файлы, которые больше не нужны ни одной программе и так далее. Для каждого дистрибутива процесс очистки отличается, потому что там берет участие пакетный менеджер и другие дополнительные утилиты. Основное что вам нужно сделать:

  • Очистить кэш пакетного менеджера;
  • Удалить лишние логи;
  • Удалить зависимости, которые больше не нужны;
  • Удалить ненужные файлы.

Если вас интересует очистка Ubuntu, то об этом уже есть более детальная статья. Как часто нужно проводить очистку? Не очень. Система засоряется очень медленно, я думаю один-два раза в год будет вполне достаточно при наличии достаточного количества памяти на жестком диске.

5. Резервное копирование

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

Для резервного копирование есть множество утилит, но лучше всего использовать инструмент, не зависящий, от копируемой системы, например, Clonezilla. Это Live образ с псевдографическим интерфейсом, который загружается отдельно от операционной системы и позволяет делать все, что вам нужно. Очень часто копировать тоже не нужно, я думаю, что одной копии раз в несколько месяцев для домашнего компьютера вполне хватит. Еще одна мера предосторожности, можно записать загрузчик Grub на флешку, если боитесь что Windows его затрет при обновлении.

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

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

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

Linux – это…

Linux – современная операционная система. Напоминает Windows, но имеет больше преимуществ. Служит базой для создания различных версий ОС. Распространяется преимущественно бесплатно, но есть и платные дистрибутивы.

Линукс выступает главным коммерческим конкурентом MacOS и Виндовс. Но использование рассматриваемой ОС несколько сложнее. Основные манипуляции здесь производятся посредством командной строки. Командами Linux достаточно легко пользоваться. Но сначала их важно изучить и понять.

Важно: если в какой-либо вакансии при трудоустройстве написано «знание Linux», подразумевается, что соискатель способен выполнять операции в ОС через командную строку.

Чем лучше Windows

У Linux имеет ряд преимуществ перед «общепринятыми» операционными системами. К ним относят следующие моменты:

  1. Поддержка на старых компьютерах. Некоторые дистрибутивы специально адаптированы под такое оборудование. Они расходуют крайне мало ресурсов.
  2. Более понятный интерфейс для большинства пользователей. Актуально для тех, кому работа с Window 8 и 10 доставляет некие неудобства.
  3. Небольшой размер. В среднем дистрибутив Linux весит около 1 ГБ. Есть и более легкие версии.
  4. Наличие бесплатного специализированного программного обеспечения. Это позволяет производить настройки и корректировку системы под собственные нужны.
  5. Высокий уровень безопасности. Изначально Linux создавался как ОС с надежной защитой. В Сети до сих пор очень мало вирусов для этого программного обеспечения. Можно сказать, что для Линукса интернет и его ресурсы предельно безопасны.
  6. Конфиденциальность. Сбор информации о пользователях и их обзвон здесь не предусматривается.
  7. Лучшая адаптивность. Из устройства на Линуксе можно выжать больше, чем при установке Виндовс.
  8. Высокий уровень надежности. Если приложения здесь зависают или не отвечают, их удается весьма быстро «убить». Никаких «Диспетчеров задач».
  9. Политика обновления. Ее использовать можно по желанию. Навязываться новые версии ПО не будут.
  10. Разнообразие. ОС может выглядеть и вести себя так, как этого хочет непосредственный юзер.

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

Недостатки

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

  1. Отсутствие некоторых «привычных» юзеру программ. Для Linux требуется специальное программное обеспечение. Не всегда приложения Window адаптированы под Линукс. Данная проблема легко решается. Приложения запускаются в отдельном ПО Wine.
  2. Малое количество игр по сравнению с Windows. Для заядлых игроков рассматриваемая операционная система подойдет не лучшим образом. Проблема решаема. Достаточно запустить эмулятор PlayOnLinux или Wine.
  3. Драйверы. У Linux есть драйверы практически для всего существующего оборудования. Но некоторые подключаемые устройства могут не работать или функционировать с ошибками. Поэтому перед приобретением устройства рекомендуется уточнить совместимость с Линуксом.

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

Дистрибутивы и их особенности

Перед тем, как устанавливать Линукс, нужно выяснить, какие именно дистрибутивы он имеет. Существует огромное множество вариантов. Каждый обладает плюсами и минусами:

  1. Mint. Отличный вариант для новичков. Не требует особых навыков владения компьютерами, легко устанавливается. «Внешность» рабочего стола напоминает Windows. Подойдет для плавного перехода с Виндовс на Линукс.
  2. Debian. Самый коммерческий из всех вариантов. Здесь нет проприетарных прошивок, программного обеспечения и драйверов. Его называют «дед Linux».
  3. Ubuntu. Один из самых популярных вариантов компьютерной системы. Убунту имеет понятный и красивый интерфейс, легко устанавливается. Использовать его тоже не составит никакого труда.
  4. openSUSE. Выделяется мощностью, стабильностью. Работать с ней труднее, чем с предыдущими дистрибутивами. Установить его сложнее предыдущих разработок.
  5. Fedora. Наиболее современный. Включает в себя все новые концепции и возможности. В основе коммерческий дистрибутив.
  6. Mageia. Реинкарнация Mandriva Linux. Тоже легко используется и инициализируется.
  7. CentOS. Напоминает «Федору», но выделяется стабильностью.
  8. Manjaro. В основе лежит Arch Linux. Здесь пользователь может добиться баланса между простотой применения и современным ПО.
  9. LXLE. Версия для старых компьютеров.
  10. Arch. Мощный вариант, который предусматривает роллинг релизов. Не требует ручного обновления. Новичкам с ней достаточно трудно совладать.
  11. Элементарно. Linux с интерфейсом MacOS.

В качестве наглядного примера далее воспользуемся Ubuntu. Связано это с тем, что данная система действительно находится на слуху. Ее нетрудно запустить и применять на практике. Да и интерфейс здесь приятен глазу.

Ubuntu – чем хорош для новичков

Ubuntu – операционная система Линукса. Она отлично подойдет новичкам:

  1. Запустить Ubuntu достаточно просто, как и установить. Предварительно потребуется откорректировать лишь разметку дисков.
  2. Готовность к работе после инициализации. Основные программы и приложения для функционирования уже будут настроены.
  3. Хорошо продуманная система управления ПО. Устанавливать дополнительный контент предлагается через Synaptic. Здесь можно увидеть отзывы, рейтинги и каталог доступного обеспечения.
  4. Минимальное участие командной строки. Пользоваться Ubuntu можно вообще без данной «службы».

Отличие Ubuntu от других систем для компьютеров – простота и легкость использования.

Загрузка и инициализации Убунту

Пользоваться Ubuntu сможет даже новичок. Но перед этим необходимо выяснить, как скачать последнюю версию соответствующего программного обеспечения, а затем инициализировать его. Ничего особенного делать не придется. Главное сразу определиться, куда записывать дистрибутив – на Flash-карту или диск.

Загрузка файла

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

  1. Перейти на официальную страничку Ubuntu.
  2. Переключиться в раздел Download.
  3. Выбрать Download and Install.
  4. Определиться, какую именно версию загружать. Кликнуть по подходящей строчке в выпадающем меню.
  5. Кликнуть по кнопке Start Download.

Вот инструкция, которая поможет получить бесплатный дистрибутив Ubuntu. В итоге у юзера будет готовый ISO-файл, обладающий весом примерно 700 мегабайт.

Запись образа на диск

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

Чтобы создать загрузочный диск Ubuntu, потребуется:

  1. Вставить в устройство пустой диск.
  2. Запустить Nero Express.
  3. Перейти во вкладку «Образ, проект».
  4. Щелкнуть по надписи «Образ диска или сохраненного проекта».
  5. Выбрать ISO-файл с Ubuntu.
  6. Кликнуть по кнопке «Записать».

Остается дождаться завершения операции. Если все сделано верно, у пользователя на руках окажется готовый установочный диск с Ubuntu.

Запись на флешку

Для любого пользователя загрузочная флешка будет отличным спасением. С ее помощью можно создавать LiveCD (запускать ОС без установки) или проводить непосредственную инициализацию ПО.

Действовать рекомендуется следующим образом:

  1. Скачать и установить приложение для создания загрузочных флешек. Создали Ubuntu рекомендуют Universal USB Installer.
  2. Запустить утилиту.
  3. Вставить флешку в компьютер или ноутбук.
  4. Выбрать на первом шаге Linux, который хочется установить.
  5. Указать путь к ISO-файлу.
  6. Согласиться с действиями, которые будут выполнены. Они выведутся в окно-предупреждение.
  7. Щелкнуть по кнопке Create.

Для реализации поставленной задачи необходимо подготовить Flash-карту объемом около 1 ГБ.

Инициализация системы

Когда все подготовлено, можно приступать к непосредственной инициализации:

  1. Открыть BIOS на компьютере.
  2. Переключиться в расширенные настройки.
  3. Поставить приоритет загрузки в зависимости от того, откуда производится установка. Если с диска – CD/DBD ROM, если флешка – USB.
  4. Сохранить настройки.
  5. Вставить в устройство диск или загрузочную флешку. Лучше сделать это заранее.
  6. Кликнуть по любой кнопке на экране.
  7. Выбрать пункт «Установить Ubuntu».
  8. Указать язык, который будет использоваться. Пример – «Русский».
  9. Щелкнуть по кнопке «Далее».
  10. Разделить жесткий диск на несколько частей. В файловой системе Linux должен находиться на отдельном разделе. Лучше создавать 3-4 «блока» на жестком диске.
  11. Выбрать, как производить инициализацию. Пример – «Стереть диск».
  12. Указать раздел инициализации.
  13. Установить логический раздел 30 ГБ.
  14. Кликнуть по «ОК».
  15. Указать корневой раздел.
  16. Создать раздел home. Для этого предстоит кликнуть «Свободное место»-«Добавить». Выбрать Логический тип примерно на 21-22 ГБ.
  17. Добавить swap раздел аналогичным образом, но размером около 2 ГБ. Местоположение – «Начало». «Использовать» — раздел подкачки.
  18. Выбрать устройство для установки системного загрузчика. Пример — /dev/sda.
  19. Форматирование устанавливается около корневого раздела и home. Щелкнуть по «Установить сейчас».

Несколько минут – и полный Ubuntu готов к работе. По этой ссылке можно увидеть скрины каждого описанного этапа инициализации.

Запуск без установки

Убунту, как и другой Linux, может работать без установки через LiveCD:

  1. Повторить первые 6 шагов предыдущей инструкции.
  2. Выбрать пункт «Попробовать Ubuntu».
  3. Указать используемый язык в системе.
  4. Дождаться завершения операции.

Таким образом можно показать Ubuntu клиенту без инициализации. Возможна непосредственная установка на устройство через LiveCD. Для этого на рабочем столе есть специальный файлик. Никакие команды Linux здесь не потребуются.

Как быть с управлением

Предложенные выше инструкции и указания – базовые знания, которые должны быть у каждого юзера. Когда операционная система установлена, нужно научиться ей управлять. В случае с Ubuntu можно обойтись пользовательским интерфейсом. Но для большинства дистрибутивов требуется знать команды Linux. Они отлично работают со всеми версиями рассматриваемого программного обеспечения UNIX.

Навигация терминала

Введенные вами команды будут приводить к выполнению тех или иных действий в Линуксе. Начать стоит с навигации в терминале:

  1. &&. Амперсанд (двойной) помогает выполнять сразу несколько команд. Обработка в порядке очереди.
  2. Alias. Присваивание собственных названиям длинным командам: alias длинное_указание короткое_указание.
  3. cd. Корректировка текущей терминальной папки. При вводе без дополнительных адресов у ядра будет использоваться домашняя папка.
  4. Clear. Отвечает за очистку терминала от сообщений.
  5. History. Отображение ранее введенных указаний/инструкций. С этой возможностью не придется каждый раз вбивать операции вручную.
  6. Man. Отображение руководства по программам и командам Linux.
  7. Whatis. Краткая характеристика пакета/ПО.

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

Суперпользователь

Для большинства действий в Linux (Ubuntu в том числе) требуется обеспечить права администратора. Далее удастся выполнять разнообразные манипуляции:

  • Sudo. Дает права администратора. Ставится перед командой.
  • Sudo su. Позволяет обрабатывать несколько операций с правами суперпользователя.
  • Sudo gksudo. Для приложений с графическим интерфейсом с правами администратора.
  • Sudo !!. Отвечает за запуск ранее введенной команды от имени админа.

Использовать эти «инструменты» не рекомендуется, если пользователь не понимает, что он делает.

Процессы

Основы работы с процессами тоже должен знать каждый клиент:

  1. Kill. Принудительное завершение процессов.
  2. Xkill. Завершение процесса. После ее ввода нужно кликнуть по окну, которое хочется закрыть.
  3. Killall. Убийство всех процессов с тем или иным именем.
  4. Top. Отображение запущенных операций. Осуществляется сортировка по потреблению ресурсов компьютера.

Часто на практике встречаются именно эти манипуляции. Но они – лишь верхушка айсберга.

Файлики и папочки

Есть команды в Linux для файлов и папок:

  1. Cat. Применяется одним текстовым документов, отображая его содержимое. При указании нескольких подобных файлов происходит их склеивание.
  2. Chmod. Изменение прав доступа к файлу.
  3. Chmod. Корректировка владельца документа. Используется с правами суперпользователя.
  4. File. Отвечает за вывод сведений о задействованном документе.
  5. Nano. Простой текстовый редактор. После операции указывается путь к файлику.
  6. Rename. Переименование.
  7. Touch. Корректировка даты открытия или изменений в файле.
  8. Wget. Загрузка из интернета в терминальную папку.
  9. Zip. Распаковка и сжатие архивов.
  10. Mkdir. Создание новой папки в терминальной или ранее указанной.
  11. Rmdir. Удаление папки.
  12. Rm. Удаление файла/ов по определенным признакам.
  13. Cp. Создание копии в папке терминала.
  14. mv. перемещение из одного места в другое.
  15. Find. Поиск документов по тем или иным критериям.
  16. Grep. Поиск текстовых документов с определенными строчками.
  17. Locate. Поиск файла/папки с названиями, подходящими общему запросу. Отображает путь в файловой системе.

Это – основные команды в Linux, с помощью которых юзеры смогут работать с рассматриваемом ОС.

Управление системой

Различные действия в Linux можно проделывать при помощи таких указаний:

  1. Df. Показывает объем диска.
  2. Free. Доступное и занятое пространство оперативной памяти.
  3. Uname. Сведения о системе.
  4. Uptime. Указывает, как долго ОС работает.
  5. Whereis. Ссылка на расположение исполняемого файла приложения.
  6. Whoami. Имя пользователя.

На первых порах этого будет более чем достаточно.

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

В любой системе можно управлять юзерами:

  1. Useradd. Добавление нового клиента.
  2. Userdel. Удаление пользователя и его файлов.
  3. Usermod. Корректировка.
  4. Passwd. Корректировка пароль учетной записи.

При использовании последней операции важно учесть – корректировку всех пользовательских паролей способен осуществлять лишь суперюзер.

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

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

Linux-beginners-1-000.jpgКак показывает читательский отклик, интерес к решениям на базе Linux весьма и весьма велик, в тоже время уровень подготовки администраторов в этой области оставляет желать лучшего. Свидетельство тому, бесконечно повторяющиеся простейшие вопросы в комментариях. Во многом, это следствие того, что наши инструкции можно выполнить «дословно» и получить работающий, результат. Но есть и обратная сторона медали, такой подход не предусматривает появлению системных знаний, оставляя знание предмета на фрагментарном уровне.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

А как быть с теми, кто только делает свои первые шаги? К сожалению, в IT-сообществе существует некоторый снобизм, мол, чего об этом говорить, это и так все знают, или «гугл в помощь», забывая, что каждый из нас когда-то был новичком и с мистическим ужасом смотрел в черный экран Linux-консоли, абсолютно не понимая, куда он попал и что ему делать.

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

Итак, вы решили стать Linux администратором…

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

Сразу о том, что нужно раз и навсегда забыть. Это «религиозные войны» и «религиозный фанатизм». Одинаково плохо отрицать возможности Linuх-систем, как и превозносить их, стремясь перевести на Linux все что нужно и не нужно. Запомните — операционная система — это инструмент, хороший специалист берет для каждой задачи наиболее подходящий, фанатик будет забивать гвозди микроскопом, потому что взять в руки молоток ему «религия не позволяет».

Даже больше, сама по себе операционная система не имеет никакой ценности, это всего лищь среда для запуска и выполнения некоторых служб и сервисов. Без софта система мертва. Возьмем для примера клон BeOS — Haiku, ну поставили, ну посмотрели — прикольно… А дальше что?

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

Linux-beginners-1-001.jpgДля привыкшего к графическим инструментам Windows-администратора это может показаться сложным. Но следует твердо усвоить одну истину — консоль является единственным полноценным инструментом администрирования Linux и совсем не означает ограниченность в возможностях или неполноценность системы. Даже наоборот, командная строка позволяет выполнить многие задачи намного быстрее и проще, чем графические инструменты администрирования.

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

Linux-beginners-1-002.jpgLinux, создававшийся по образу и подобию UNIX-систем, является полноценной системой и без графической оболочки, более того мы можем запустить, закрыть или вообще сменить графическую оболочку без какого-либо влияния на работоспособность системы и даже без ее перезагрузки. Завершили сеанс Gnome, запустили KDE, а потом и вовсе вышли в консоль. Поэтому все инструменты управления системой разработаны для использования в режиме командной строки. А все панели и графические инструменты являются всего лишь надстройкой над ними.

Windows долгое время разрабатывался по принципиально иной технологии, графическая оболочка была поставлена в основу системы и долгое время даже выполнялась на уровне ядра (семейство Win 9x). Поэтому все инструменты администрирования были изначально графическими, а инструменты командной строки скорее их дополняли, чем заменяли. Любой, кто занимался восстановлением Windows, знает, что возможности инструментов командной строки там существенно ограничены и предназначены в первую очередь для восстановления системы, а не для ее администрирования.

Ситуация стала меняться с выходом PowerShell и Core-версий Windows Server. Несмотря на то, что сегодня графическая оболочка продолжает играть существенную роль в Windows-системах, администраторы получили в руки альтернативный инструмент — консоль PowerShell, которая позволяет полноценно администрировать Windows в режиме командной строки. При этом возможности PowerShell сразу завоевали популярность в среде специалистов, так как позволяют выполнять многие задачи быстрее и проще, чем графические инструменты.

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

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

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

Если вы еще не передумали становиться Linux-администратором, то поедем дальше и рассмотрим отличия в архитектуре системы.

Ядро и драйвера

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

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

В микроядерной и гибридной архитектурах, драйвера, хоть могут и работать на уровне ядра, его частью не являются и от версии ядра не зависят. Поэтому мы можем без проблем обновлять ядро или использовать один и тот-же драйвер для всех версий систем с общей структурой ядра. Например, в Windows для всего семейства современных ОС, от Windows Vista до Windows 8.1, часто используется один и тот-же драйвер.

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

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

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

Мы не будем касаться конкретных файловых систем, тут проблем возникнуть не должно, если администратор работал с Windows системами, то что такое файловая система и чем FAT отличается от NTFS он знает, поэтому разобраться в разнице между ext3, ext4 и, скажем, ReiserFS для него особого труда не составит. А поговорим о фундаментальных отличиях. В отличие от Windows, файловая система Linuх иерархична. Она начинается от корня, который обозначается знаком / (слеш), и имеет древовидную структуру. При этом абсолютно не имеет значения, что отдельные части файловой системы могут находиться на других разделах или вообще физических дисках.

Рассмотрим еще одну схему.

Linux-beginners-1-003.jpgВ Windows каждый раздел имеет собственную файловую систему и обозначающую его букву. Все пути к файлам и папкам начинаются с буквы, т.е. от корня раздела. Так если у нас на первом физическом диске, на втором логическом разделе была папка DATA, то путь к ней соответственно будет как D:DATA, если мы захотим перенести ее на второй жесткий диск, то ее пусть изменится на E:DATA. В ряде случаев это жутко неудобно, так как путь надо изменить во всех местах ее использования и даже существуют соответствующие утилиты.

В Linux подход кардинально иной. Самое время познакомиться с термином точка монтирования, который означает место файловой системы, куда подключается устройство хранения данных. Например, мы хотим вынести домашние каталоги пользователей на отдельный раздел, как на схеме выше, для этого нам нужно смонтировать второй логический раздел первого физического диска sda2 в /home. После чего перенести туда все пользовательские данные. Для системы и программ это произойдет абсолютно прозрачно, они как использовали абсолютный путь, скажем /home/andrey/data, так и будут его использовать. Добавили еще один диск и хотим вынести туда директорию /var? Нет проблем, останавливаем использующие каталог службы, монтируем sdb1 в /var и переносим данные, запускаем службы.

Всё есть файл

Еще один основополагающий принцип, который унаследован от UNIX-систем. В Linux всё есть файл: устройства, диски, сокеты и т.д., например, открыв /var/run мы увидим pid-файлы, соответствующие каждой запущенной службе в системе, а в /dev файлы каждого подключенного к системе устройства:

Linux-beginners-1-004.jpgЧто это дает? Не будем вдаваться в подробности, а разберем несколько простых примеров. Скажем, нужно создать образ оптического диска. В Windows нам понадобится для этого специализированное ПО, в Linuх все проще, CD-ROM — это блочное устройство, но в тоже время — это файл, файл блочного устройства. Берем соответствующий инструмент и копируем содержимое файла устройства в файл ISO образа:

dd if=/dev/cdrom of=/home/andrey/image.iso

Хотим заменить жесткий диск? Нет ничего проще, копируем содержимое одного файла блочного устройства в файл другого блочного устройства:

dd if=/dev/sda of=/dev/sdb

И не нужно никаких Partition Magic.

Другая ситуация, какое-либо ПО настоятельно ищет библиотеку lib-2-0-1.so, а у нас есть совместимая с ней, но более новая, lib-2-1-5.so, как быть? Создаем символическую ссылку на lib-2-1-5.so с именем lib-2-0-1.so и все будет работать. Потому что все есть файл и символическая ссылка тоже тип файла. А теперь попробуйте подсунуть Windows приложению lib-2-0-1.lnk вместо lib-2-1-5.dll…

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

ifconfig

выведет на экран сведения о сетевых адаптерах системы:

Linux-beginners-1-005.jpgА теперь вспоминаем, что все есть файл, в том числе и устройство отображения (экран), поэтому просто перенаправим стандартный поток вывода вместо экрана в нужный нам файл:

ifconfig > ~/123.txt

После чего вывод команды будет сохранен в файл 123.txt в корневой директории пользователя:

Linux-beginners-1-006.jpg

Потоки и конвейер

В прошлом примере мы затронули стандартный поток вывода. В Linux существуют стандартные для всех процессов потоки ввода-вывода данных stdin, stdout и поток вывода ошибок stderr. Что это значит? Как минимум то, что процесс обмена данными между различными процессами стандартизован. Это позволяет создавать конвейеры, когда стандартный поток вывода одной команды передается стандартному потоку ввода другой. Например, мы хотим посмотреть список установленных пакетов в системе, в частности пакеты squid. Для этой цели есть команда:

dpkg -l

Ээээ… Это что такое и как тут что-то понять? На экране быстро промелькнули сведения о всех установленных в системе пакетах и все что мы можем видеть, это «хвост» этого вывода:

Linux-beginners-1-007.jpgНо ведь нам и не нужен весь вывод этой команды, нас интересуют исключительно пакеты squid. Поэтому направим вывод этой команды на ввод другой, которая уже отберет и покажет то, что нам нужно:

dpkg -l | grep squid

Linux-beginners-1-008.jpgВот это совсем другое дело!

Причем конвейер может быть сколь угодно длинным, результат работы одной команды можно передавать второй, от второй к третьей и т.д. Еще один пример из жизни. Вам надо получить все строки вашего конфигурационного файла squid, но без комментариев и пустых строк, чтобы, например, выложить на форуме или отправить другу. Можно конечно скопировать все, но вряд-ли кто-то захочет вам помогать, прокручивая полотно стандартного файла squid.conf, большая часть которого комментарии и примеры. Делаем проще:

cat /etc/squid3/squid.conf | grep -v '^#' | sed '/^$/d' > ~/mysquid.conf

И вот что у нас получилось:

Linux-beginners-1-009.jpgПросто и понятно, все опции как на ладони. Это стало возможным в результате использования конвейера трех команд, первая вывела в поток содержимое файла, вторая отобрала все строки кроме комментариев, а третья удалила пустые, результат мы направили в файл.

Буквы большие, буквы маленькие

Linux, как и UNIX, является регистрозависимой системой. И это надо помнить! Потому что, в отличие от Windows, myfile.txt, Myfile.txt и myfile.TXT — это три разных файла. В целях совместимости с другими системами не стоит этим злоупотреблять и хранить файлы, имя которых отличается только регистром, а хорошим тоном считается использование в именах только строчных букв.

Расширения и типы файлов

В Windows системах тип файла определяется его расширением, если мы переименуем exe-файл в jpg, то он не запустится, и система будет пытаться обработать его как картинку. В Linux тип файла определяется по его содержимому и расширение используется исключительно для совместимости с другими системами или для удобства пользователя. Возможность исполнения файла обеспечивается установкой соответствующего атрибута. Так в Windows чтобы сделать скрипт исполняемым, надо было изменить расширение с txt на bat, в Linux для этого нужно сделать файл исполняемым. Непонимание этого момента приводит к ситуациям, когда начинающий администратор не понимает, почему его скрипт myscript.sh не выполняется. На самом деле расширение .sh нужно только для удобства, чтобы сразу было ясно, это скрипт Bash Shell, а чтобы он работал, ему надо поставить атрибут исполняемого, а называться он может как угодно, хоть myscript.pupkin-vasya.

Стесняюсь спросить…

Позвольте, скажет иной читатель, это ведь сколько всего надо помнить: синтаксис команд, ключи, опции и т.д., и т.п. Тут нужно справочник покупать или всегда интернет под рукой держать… Вовсе нет, достаточно помнить названия команд, это как раз несложно, по сложившимся в UNIX традициям, командам дают короткие и удобные имена. А все остальное можно спросить у системы. Вопреки распространенному мнению, Linux системы прекрасно документированы. Посмотреть синтаксис и ключи любой команды можно запустив ее с ключом —help, а так как описания обычно не помещаются на один экран, то следует перенаправить вывод справки утилите more, которая выведет информацию поэкранно. Допустим, нас интересует команда grep:

grep --help | more

Linux-beginners-1-010.jpgБолее подробную информацию можно получить с помощью команды man:

man grep

Linux-beginners-1-011.jpgК сожалению, информация на английском, но знание технического английского, хотя бы на уровне «читаю со словарем» необходимое требование к системному администратору. Вам ничего не напоминает последний скриншот? Правильно, OpenNET.

Linux-beginners-1-012.jpgНисколько не умаляя значение этого ресурса, можно сказать, что взяв на вооружение команду man и базовые познания в английском, OpenNET вы будете посещать гораздо реже.

Заключение

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

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

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

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Понравилась статья? Поделить с друзьями:
  • Для демократического стиля руководства характерно тест
  • Преднизолон в таблетках инструкция для собак
  • Силодозин инструкция по применению цена отзывы врачей аналоги цена
  • Левомицитиновые капли глазные для детей инструкция по применению
  • Nilfisk attix 50 21 xc инструкция