Как работать в программе линукс. Фундаментальные основы Linux для начинающих. Отличия Linux от Windows

  • 25.01.2022

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

Отличия Linux от Windows

Основа работы в Linux с графической средой не отличается от Windows. Но для корректной работы Linux нужно настроить.

Самые существенные отличия:

  1. Linux предназначен для продвинутых пользователей, Windows - "система для всех".
  2. Linux превосходит Windows в обработке потоков и данных.
  3. При использовании Linux можно не бояться нарушить какое-нибудь лицензионное соглашение.
  4. Любое приложение имеет собственное адресное пространство, независимое от адресного пространства ядра, что позволяет с легкостью создавать встроенные системы на основе Linux.

И это далеко неполный список преимуществ.

Преимущества Linux

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

  1. Бесплатность - сама операционная система и большинство программ для нее полностью бесплатны и полностью функциональны.
  2. Отсутствие вирусов - сама конфигурация ядра операционной системы исключает работу вредных программ. Это позволяет обходиться без антивирусов, которые замедляют компьютер.
  3. Открытый исходный код - что позволяет использовать и модифицировать код как угодно. Также благодаря этому создается огромное количество встраиваемых систем на основе Linux .

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

В своем исходном виде Linux не предоставляет таких привычных вещей, как графический интерфейс, установка и удаление программ.

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

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

Список лучших дистрибутивов:

  1. Debian - стабильный и нетребовательный к ресурсам. Имеет огромное количество пакетов для установки. Абсолютно бесплатный.
  2. Ubuntu - менее консервативный вариант Debian. Считается одним из лучших для домашнего использования.

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

Установка и настройка Ubuntu

Существует две различные версии дистрибутивов Ubuntu: LTS и Regular. Главное отличие LTS - стабильность и длительная поддержка. Такая версия выходит раз в пять лет.

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

На момент написания статьи последней LTS версией является 18.04 Bionic Beaver.

Установка не вызовет никаких затруднений. От пользователя лишь требуется нажимать кнопку "Далее" в нужные моменты.

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

Основы Linux

На рабочем столе Ubuntu расположены: панель управления, dock-панель, а также меню приложений.

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

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

В меню приложений отображаются все установленные приложения.

Вместе с дистрибутивом Ubuntu поставляется файловый менеджер Nautilus. Этот файловый менеджер позволяет легко управлять файлами и каталогами.

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

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

  1. Название не должно превышать 255 символов.
  2. Linux является чувствительной к регистру системой, следовательно, "example.txt" и "Example.txt" являются разными файлами даже несмотря на то что они могут находиться в одном каталоге.
  3. Если название файла или каталога начинается с "." - такой файл или каталог будет помечен системой как скрытый.
  4. Поскольку основа Linux - UNIX, то он полностью поддерживает кодировку UTF-8, допускается использование национальной раскладки.

Терминалы в Linux

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

Работа ведется с терминалом двумя способами: и оконная консоль. В первом случае графическая оболочка игнорируется, а результат работы программ выводиться на экран в виде текста.

Для работы с терминалом не требуется знаний основ программирования в Linux, как это может показаться на первый взгляд. Нужно лишь знать определенные команды. Поскольку этих команд множество, то запомнить их очень тяжело даже людям, хорошо разбирающимся в Linux. Поэтому все эти команды можно найти в Интернете либо же воспользоваться внутренней справкой, введя в терминале "find --help".

Установка и удаление программ с помощью Synaptic

Synaptic - программа с графическим интерфейсом, использующаяся в дистрибутивах Debian и Ubuntu, и предназначенная для поиска, установки и удаления программ.

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

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

Если собираетесь впервые перейти на 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, рассказали о лучших приложениях, как установить приложения и как использовать командную строку.

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

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

WikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 46 человек(а).

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

Шаги

    Ознакомьтесь с системой. Попробуйте скачать и установить ее на свой компьютер. Если вы не уверены, помните, что есть возможность оставить вашу текущую операционную систему и просто выделить часть дискового пространства под Linux (а также вы можете запускать обе операционные системы с помощью VirtualBox).

    Проверьте свое оборудование с помощью "Live CD", который поставляется со многими дистрибутивами Linux. Это особенно полезно, если вам не хочется устанавливать на ваш компьютер вторую операционную систему. Live CD позволит вам загрузить Linux с компакт-диска без необходимости устанавливать что-либо на компьютер. Ubuntu и некоторые другие дистрибутивы Linux также предлагают диски CD или DVD, которые позволят вам загрузиться в живом режиме и затем произвести установку с того же диска.

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

    Изучите дистрибутивы Linux. Когда говорят о "Linux", в большинстве случаев имеют ввиду "Дистрибутив GNU/Linux." Дистрибутив - это совокупность программного обеспечения, которое работает поверх очень маленькой программы, называемой ядром Linux.

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

    Установите программное обеспечение. Как можно раньше привыкните устанавливать и удалять программное обеспечение. Понимание управления пакетами программ и репозиториев очень важно для принципиального понимания Linux.

    Научитесь использовать (и привыкните это делать) интерфейс командной строки. Он известен как "терминал", "окно терминала" или "оболочка". Одна из основных причин, почему люди переходят на использование Linux, - это наличие в нем терминала, поэтому не пугайтесь его. Это мощный помощник, который не имеет таких ограничений, как командная строка Windows. Но вы можете также легко использовать Linux без использования терминала, также как например на Mac OSX. Использование команды "apropos" поможет вам найти команду, которая выполняет определенную задачу. Попробуйте набрать "apropos user", чтобы увидеть список команд, у которых в описании есть слово "user".

    Ознакомьтесь с файловой системой Linux. Вы заметите, что больше нет "C:\", который вы использовали в Windows. Все начинается с корня файловой системы (также известного как "/"), и другие жесткие диски доступны через папку /dev. Ваша домашняя папка, которая в Windows XP и 2000 находилась обычно в C:\Documents and Settings, теперь расположена в /home.

  1. Продолжайте раскрывать потенциал вашей установки Linux. Попробуйте зашифрованные разделы, новые и очень быстрые файловые системы (например btrfs), избыточные параллельные диски, которые увеличивают скорость и надежность (RAID), и попробуйте установить Linux на загрузочную USB флешку. Вскоре вы обнаружите, что многое умеете!

    • Создайте свою первую систему Linux с конкретной целью и следуйте документу HOWTO шаг за шагом. Например, шаги для настройки файлового сервера достаточно просты, и вы можете найти кучу сайтов, которые шаг за шагом помогут вам это сделать. Это ознакомит вас с расположением разных вещей, что они делают и как их изменить.
    • Будьте терпеливы и упорны, если действительно хотите научиться использовать GNU. Не стоит переходить от дистрибутива к дистрибутиву в поисках того, в котором все правильно работает. Вы узнаете больше при изучении того, как починить что-то неработающее.
    • Называйте каталоги "каталогами", а не "папками"; хотя эти два слова кажутся синонимами, "папки" - понятие из Windows.
    • Вы можете получить помощь по практически любой программе или дистрибутиву на irc сервере irc.freenode.net (например: #debian, #ubuntu, #python, #FireFox и т.д.). Также на irc.freenode.net вы сможете найти сообщества пользователей.
    • Помните, что только DOS использует обратный слеш ("\") для разделения директорий, а Linux использует прямой слеш ("/"). Обратный слеш в Linux в основном используется для экранирования символов (например, \n это переход на новую строку, \t это знак табуляции).
    • В Интернете много различных сайтов и списков рассылки о Linux. Ищите в Интернете ответы на свои вопросы.
    • Для желающих побольше узнать о Linux есть книги от издателей John Wiley & Sons, O"Reilly и No Starch Press. Также есть книга "In the Beginning ... was the Command Line"("В начале была... командная строка") Нила Стивенсона, доступная по ссылке http://www.cryptonomicon.com/beginning.html , и "LINUX: Rute User"s Tutorial and Exposition", доступная по ссылке http://rute.2038bug.com/rute.html.gz .

    Предупреждения

    • На всех *nix системах (Linux, UNIX, *BSD и т.д.) администратор или суперюзер - это "root". Вы администратор вашего компьютера, но "root" - это не аккаунт пользователя. Если инсталляционный процесс не делает этого, то создайте сами обычный аккаунт с помощью "useradd <ваше_имя>" и пользуйтесь им для повседневных дел. причина для разделения вас как пользователя и как администратора в том, что *nix система предполагает, что root знает, что он делает и он не навредит. Поэтому нет никаких предупреждений. Если вы напишете соответствующую команду, система тихо удалит файл с компьютера без запроса на подтверждение, потому что именно root спрашивает об этом.
    • Иногда люди советуют вредоносные команды , поэтому проверяйте команды перед их использованием.
    • Не запускайте команду rm -rf / или sudo rm -rf / , если вы действительно не хотите удалить все свои данные. Наберите команду "man rm", чтобы узнать об этом подробнее.
    • Всегда сохраняйте резервные копии файлов перед попыткой изменить разделы на вашем диске, когда устанавливаете Linux. Сохраняйте резервные копии файлов на съемных носителях, таких как диски CD, DVD, USB диски или на другом жестком диске (не на другом разделе).
    • Аналогично, не создавайте файл с именем "-rf". Если вы запустите команду на удаление файлов в той директории, она будет трактовать файл "-rf" как аргумент командной строки и удалит также и все файлы в поддиректориях.
    • Бывает заманчивым просто написать ту же команду, что вы нашли на каком-то сайте, в ожидании, что будет выполнена та же задача. Однако, зачастую это не работает, потому что у вас более новая версия, другое оборудование или другой дистрибутив. Попробуйте сначала выполнить команду с опцией --help и понять, что она делает. После этого обычно очень легко исправить какие-то мелкие проблемы (/dev/sda -> /dev/sdb и т.д.) и достигнуть желаемой цели.

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

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

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

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

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

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

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

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

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

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

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

Linux, создававшийся по образу и подобию 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х иерархична. Она начинается от корня, который обозначается знаком / (слеш), и имеет древовидную структуру. При этом абсолютно не имеет значения, что отдельные части файловой системы могут находиться на других разделах или вообще физических дисках.

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

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

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

Всё есть файл

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

Что это дает? Не будем вдаваться в подробности, а разберем несколько простых примеров. Скажем, нужно создать образ оптического диска. В 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

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

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

Ifconfig > ~/123.txt

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

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

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

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

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

Dpkg -l | grep squid

Вот это совсем другое дело!

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

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

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

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

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

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

Более подробную информацию можно получить с помощью команды man :

Man grep

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

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

Заключение

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

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

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

Руководство Linux Ubuntu для начинающих - познакомит начинающего пользователя с бесплатной и удобной операционной системой Ubuntu. В руководстве рассказано о системе, как ее установить, проведено краткое знакомство с установленными в системе по-умолчанию программах, как ее настроить после установки, что такое Терминал и как с ним работать, установка и настройка локального веб-сервера Apache, PHP и Mysql. Рассказано как создать свой собственный образ на базе оригинальной Ubuntu, установив в него свои программы, игры и обновив систему. Также кратко описаны полезные советы при работе с Ubuntu.


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