Linux для всех: гайд для программистов и сисадминов

Программисты, сисадмины, сетевые инженеры, специалисты по безопасности, аналитики данных – всем им необходимо знать Linux. Linux – свободная операционная система с открытым исходным кодом, на которой работает большинство серверов и значительная часть домашних ПК. Ваш роутер, скорее всего, работает на Linux, Android – это тоже Linux, а iOS – практически Linux. Большая часть IT так или иначе связана с Linux.

Краткая история Linux

Unix, многопользовательская операционная система, переносимая на процессоры с различной архитектурой, появилась в начале 1970-х годов. Первая Unix писалась на ассемблере, но разработчики создали язык B, а затем – язык C, который до сих пор остается одним из самых популярных языков программирования. Linux и macOS X (с её Darwin) являются Unix-подобными операционными системами. Windows происходит от MS-DOS.

В 1991 году Линус Торвальдс создал Linux, ядро операционной системы, поскольку Minix его не удовлетворял. Выложив ядро в интернет, он позволил другим разработчикам использовать и дорабатывать его. Ядро Linux стало недостающим элементом проекта GNU Ричарда Столлмана, объединив утилиты GNU в единую систему. В 1994 году вышла первая основная версия Linux. Корректно систему следует называть GNU/Linux, поскольку Linux – это лишь ядро, а все остальные утилиты разработал Столлман.

Свободное ПО и Linux

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

C++: мощный язык программирования

C++ – мощный язык программирования, на котором создаётся множество программ: игры, веб-приложения, роботы, операционные системы, нейронные сети. Освоив C++, вы сможете легче изучать другие языки.

Аргументы в пользу изучения C++:

  • Актуальность языка в долгосрочной перспективе.
  • Высокие зарплаты C++ разработчиков.

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

Linux представлен множеством дистрибутивов – различных версий операционных систем, основанных на общем ядре. Популярные дистрибутивы: Ubuntu, Mint, Fedora, Arch, Debian. Многие дистрибутивы основаны друг на друге (например, Ubuntu – на Debian). Это возможно благодаря открытому исходному коду. Вы даже можете создать свой собственный дистрибутив. Разница между дистрибутивами для конечного пользователя не так велика, хотя графический интерфейс может отличаться. Графический интерфейс – это всего лишь программа. Для новичков рекомендуются Mint или Ubuntu; для опытных пользователей – Arch.

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

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

Работа с терминалом

Linux можно использовать, установив вместо Windows, используя WSL (Linux под Windows) или виртуальную машину.

В терминале:

  • . – текущая директория;
  • .. – родительская директория;
  • mkdir – создать директорию;
  • rm – удалить файл;
  • rmdir – удалить директорию;
  • cd – перейти в директорию;
  • ls – список файлов; ls -l – информация о правах доступа;
  • sudo – выполнить команду от имени администратора (root);
  • man <команда> – инструкция по команде;
  • Ctrl+C – прервать программу;
  • Ctrl+D – конец файла.

Каждая программа в Linux работает в отдельном процессе. Linux использует стандартные потоки ввода/вывода (stdin, stdout, stderr), которые можно перенаправлять. Bash – это скриптовый язык для автоматизации действий.

Linux для домашнего использования и игр

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

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

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

Linux и Windows – разные операционные системы. Выбор зависит от ваших потребностей.

Что будем искать? Например,программа