Введение в Linux и Bash. Курс
Курс "Введение в Linux и Bash" – серия статей-уроков, знакомящих с историей, особенностями и философией операционных систем GNU/Linux, принципами работы в режиме командной строки и основными командами, выполняемыми в Bash.
Курс будет полезен начинающим пользователям операционной системы GNU/Linux, будущим системным администраторам и веб-разработчикам, планирующим самостоятельно развертывать сайты на веб-серверах.
Курс с ответами к заданиям и дополнительными уроками:
android-приложение, pdf-версия.
История Linux
В статье кратко рассматриваются предпосылки возникновения операционной системы Linux и ее развитие: историческая значимость Unix, роль проекта GNU, как появилось ядро Linux и многообразие дистрибутивов.GNU GPL
GNU GPL - одна из разновидностей копилефт-лицензий для свободного программного обеспечения. GPL есть аббревиатура от General Public License - Универсальная Общественная Лицензия. В статье рассматриваются исторические причины появления копилефт-лицензий и преимущества открытого ПО.Ядро Linux
В статье описано, что такое ядро операционной системы, особенности Unix-подобных ядер, в том числе Linux.Каталоги Linux
Структура каталогов Linux отличается от Windows. В Linux на самом верхнем уровне файловой иерархии находится один единственный корневой каталог, обозначаемый косой чертой "/" (слэш). Другие диски монтируются в /media.Типы файлов Linux
Типы файлов Linux: обычные файлы (-), каталоги (d), символьные ссылки (l), символьные (c) и блочные (b) устройства, каналы (p) и сокеты (s). В Linux расширение файла не несет информации для ОС о типе файла.Интерфейс командной строки
Интерфейс командной строки - иной, отличный от графического режима, способ работы в операционной системе, при котором команды отдаются с помощью их ввода с клавиатуры. Исторически CLI возник раньше GUI.Bash – командная оболочка Linux
Bash - это наиболее распространенная командная оболочка для Linux. Bash позволяет работать в интерфейсе командной строки операционной системы, отдавая команды в интерактивном режиме.Параметры команд
Команды Bash могут содержать параметры. Ключи, или опции, модифицируют работу программы. Аргументы, или операнды, - то, над чем выполняется команда.Ctrl + C, Ctrl + D, Ctrl + Z
В терминале Ctrl + C и Ctrl + D прерывают работу программ, Ctrl + Z - останавливает и переводит в фоновый режим. Чтобы сделать фоновую задачу текущей, используется команда fg. Для удаления процессов - команда kill.История команд и автодополнение
В Bash история команд прокручивается стрелками вверх и вниз, для автозавершения команд и адресов используется Tab - клавиша табуляции.Перенаправление ввода-вывода
В Bash с помощью знака больше ">" вывод команды можно перенаправить в файл. С помощью знака меньше изменяется стандартный поток ввода.Документация Linux
В Bash доступ к документации программ GNU/Linux можно получить с помощью программ man, info, ключа --help. Man-страницы имеют строгую структуру, info - неофициальная документация.Абсолютная и относительная адресация. Команда cd
Для перехода по дереву каталогов в Bash используется команда cd, которая в качестве аргумента принимает абсолютный или относительный адрес каталога.Команда ls – просмотр каталога
Команда ls используется в командной оболочке Linux для вывода содержимого каталогов и информации о файлах. У программы ls есть много ключей, позволяющих получать о файлах более подробную информацию, а также выводить ее в различных форматах.Копирование, перемещение, создание и удаление файлов и каталогов
В командной оболочке Bash команда cp копирует файл, mv - перемещает и переименовывает, mkdir - создает каталог, rm - удаляет. При копировании и перемещении сначала указывается источник, потом место назначения.Жесткие и символьные ссылки
В Linux каждый файл идентифицируется числовым индексным дескриптором. Имена файлов указывают на дескрипторы и являются жесткими ссылками. Символьные ссылки указывают на жесткие ссылки.Создание ссылок в Linux
В командной оболочке Linux жесткие ссылки на файлы создаются с помощью команды ln. Для создания символьных ссылок на файлы и каталоги используется команда ln -s.Права доступа
В Unix-подобных ОС для файлов устанавливаются биты прав доступа на чтение, изменение и выполнение по отношению к трем категориям: владельцу, группе и остальным.Команда chmod – изменение прав доступа
С помощью команды chmod изменяют права доступа к файлам и каталогам. Может использоваться как символьный, так и числовой способ назначения прав.Шаблоны имен файлов
В шаблонах имен файлов любое количество любых символов обозначается звездочкой *. Любой один символ - знаком вопроса ?. Если надо задать только определенные допустимые символы, то используются квадратные скобки [].Поиск файлов. Команда find
В Bash поиск файлов выполняется командой find. Сначала указывается каталог, потом свойство и его значение. Например, find . -name "*.html" ищет файлы html в текущем каталоге.Команда sudo – администрирование системы
Утилита sudo позволяет выполнить команду с правами администратора системы. В Bash сначала пишется sudo, затем команда и ее параметры.Пакетный менеджер APT
В Linux установка программ выполняется с помощью пакетных менеджеров. Наиболее популярным является apt. Команда установки: apt install. Команда удаления: apt remove.