Описание курса:
В целом, курс будет полезен для всех IT-специалистов. Однако в первую очередь рекомендуем прочитать данный материал тем, кто хочет стать Linux-инженером или Python-разработчиком, потому что бэкэнд разработка без понимания Linux почти невозможна и практически все решения хостятся на Unix-системах или так или иначе взаимодействуют с ними. Данный курс даст базовое представление об архитектуре Linux-систем, а также о компонентах, которые включены в экосистему Linux. Удачного чтения!
Вопросы для самопроверки:
Сомневаешься, будет ли тебе полезен материал курса, или хочешь убедиться, что усвоил материал курса? Проверь свои знания с помощью вопросов для самопроверки по материалам курса.
- Какие операционные системы на основе ядра Linux являются наиболее востребованными?
- Почему коммерческие версии Unix оказались ограничены в развитии?
- Как проект GNU повлиял на развитие дистрибутивов Linux?
- Почему ядро Linux считается важным, но недостаточным компонентом для полной ОС?
- В каких областях чаще всего используются системы GNU/Linux на сегодняшний день?
- Как переводится аббревиатура GPL на русский язык?
- Для чего используются трансляторы в процессе разработки программного обеспечения?
- Какое влияние оказало закрытие исходных кодов программ на развитие компьютерной науки?
- Кто был одним из видных противников закрытия исходных кодов и что он предложил?
- Каковы основные гарантии, которые получают разработчики, использующие GNU GPL для своих программ?
- Какие преимущества предоставляет свободное программное обеспечение с открытым исходным кодом?
- Какая главная функция ядра операционной системы?
- На какие типы подразделяются ядра операционной системы?
- Что такое POSIX-стандарты?
- Почему Linux, с технической точки зрения, не считается операционной системой?
- Какие преимущества даёт возможность конфигурирования ядра Linux?
- Какой каталог является корневым в файловой структуре Linux?
- Как называется стандарт, определяющий структуру файловой системы в Linux?
- В каком каталоге размещаются файлы пользователей в Linux?
- Какие права у системного администратора в системе Linux?
- Какие файлы можно найти в каталоге /etc?
- Какую функцию выполняет каталог /tmp?
- Что общего имеют каталоги /sys, /proc, и /run в файловой структуре Linux?
- Почему в Unix-подобных системах расширение файла не играет роли?
- Перечислите основные типы файлов в GNU/Linux.
- Как обозначаются обычные файлы в системе GNU/Linux?
- Какая функция у символьных ссылок в Linux?
- Как различаются символьные и блочные устройства в GNU/Linux?
- В чем основное различие между каналами и сокетами?
- Чем отличается интерфейс командной строки (CLI) от графического интерфейса (GUI)?
- Какие особенности CLI делают его более предпочтительным в некоторых случаях по сравнению с GUI?
- Какой программой чаще всего реализуется интерфейс командной строки в ОС на базе ядра Linux?
- Какой символ в приглашении командной строки указывает на работу под непривилегированным пользователем?
- Какая команда используется для изменения прав доступа к файлу в Bash?
- Что необходимо сделать для выполнения программы, если она находится в каталоге, не указанном в $PATH?
- Какой язык программирования включает в себя Bash, помимо командной оболочки?
- Что понимается под параметрами в контексте команд Bash?
- Какие действия выполняют аргументы (операнды) в командной строке Bash?
- Как изменяют поведение программы ключи (опции) в Bash?
- Можно ли комбинировать ключи в одной команде?
- Приведи пример команды Bash, выполнение которой не имеет смысла без параметров.
- Какие клавиши используются для завершения работы программы на переднем плане в терминале?
- Какой эффект оказывает Ctrl + Z на процесс в системе?
- Какую команду необходимо использовать для возобновления приостановленного процесса в фоновом режиме?
- Для чего используется команда ps в Bash?
- Какой параметр используется с командой kill для полного завершения процесса?
- Как обозначаются комбинации клавиш с Ctrl в большинстве консольных приложений?
- Какую клавишу нужно нажать, чтобы просмотреть ранее введённые команды в Bash?
- Как предотвратить сохранение команды в историю перед её вводом?
- Для чего используется клавиша Tab в Bash?
- Как Bash позволяет просмотреть все возможные варианты команд или файлов, если не удаётся определить их однозначно?
- Что происходит при нажатии сочетания клавиш Ctrl + U в командной строке Bash?
- Какое действие выполняет сочетание клавиш Ctrl + W в Bash?
- Что происходит, если в файловых менеджерах Linux нажать Ctrl + H?
- Что такое стандартный ввод и стандартный вывод в Bash?
- Какая команда используется, чтобы перенаправить вывод команды в файл?
- Чем отличается использование ">" от ">>" при перенаправлении вывода в файл?
- Какая команда используется для поиска строк в наборе данных?
- Что необходимо сделать для выполнения заранее подготовленного набора команд в Bash?
- Какую функцию выполняют man-страницы в дистрибутивах GNU/Linux?
- Как открыть man-страницу для команды?
- Какие клавиши используются для навигации по man-страницам?
- Какой альтернативный вариант документации команд Linux существует, кроме man-страниц?
- Какую опцию поддерживают почти все команды для вывода краткой справки?
- Какую команду следует использовать для перехода в другую директорию в Bash?
- В чем разница между абсолютной и относительной адресацией в Bash?
- Как обозначается домашний каталог пользователя в адресации?
- Куда приведет выполнение команды cd ../.. из домашней папки?
- Какая основная команда используется в Linux командной строке для отображения содержимого директорий и получения информации о файлах?
- Какой ключ команды ls позволяет увидеть детализированную информацию об объектах?
- Какой ключ команды ls стоит использовать, чтобы отображать скрытые файлы и текущие расположения?
- Какой ключ команды ls помогает просматривать вложенные каталоги?
- Какой командой в Bash можно копировать директорию вместе с ее содержимым?
- Какое отличие между переименованием и перемещением файлов в Bash?
- Как создать новый пустой файл в Linux?
- Какая команда используется в Linux для создания нового каталога?
- Какая команда применяется для удаления файлов в Linux?
- Что такое индексный дескриптор в операционных системах на ядре Linux?
- Может ли файл в Linux иметь несколько жестких ссылок?
- Что происходит с файлом в Linux, если удалить все его жесткие ссылки?
- Чем отличаются символьные ссылки от жестких в Linux?
- В чем разница между копированием файла и созданием жесткой ссылки?
- Что представляет собой мягкая (символьная) ссылка в Linux?
- Какая команда в Linux используется для создания жесткой ссылки на существующий файл?
- Каким ключом сопровождается команда ln при создании символьной ссылки?
- Какой командой можно проверить наличие дополнительных жестких или символьных ссылок на файл?
- Какие три категории пользователей выделяются в Linux для определения прав доступа к файлам?
- Какие основные действия можно совершать с файлом по правам доступа в Linux?
- Что обозначает буквенная запись прав доступа rwxrwxrwx в контексте прав пользователей?
- Как права доступа выражаются с помощью чисел и что обозначает запись 110100100? 755?
- Какие ключевые элементы можно использовать вместе с командой chmod?
- Что означает рекурсивное назначение прав в каталоге при помощи команды chmod?
- Каким образом можно изменить права для владельца, группы и других пользователей одним числом?
- Как отличается применение команды chmod при назначении прав для файлов и каталогов?
- Для чего используется t-бит при установке прав доступа к директории?
- Какую роль выполняют шаблоны в командных оболочках Linux?
- Какие основные специальные символы используются для задания шаблонов имен файлов в Bash?
- Какие команды в Bash используют именные шаблоны?
- Как называется утилита командной строки в Unix-подобных системах для поиска файлов?
- Какие атрибуты файлов могут использоваться для поиска, помимо имени?
- Какие параметры необходимо указать при использовании команды find для простого поиска?
- Почему шаблоны при задании поиска в команде find нужно заключать в кавычки?
- Каким ключом воспользоваться, чтобы выполнить действие с найденными файлами?
- Какое отличие в синтаксисе имеет утилита find по сравнению со стандартами Bash?
- Как называется учетная запись суперпользователя в системах на базе Unix?
- Какие задачи может выполнять суперпользователь в системах Unix?
- Какую утилиту в основном используют для администрирования Linux в современных системах вместо прямого использования root?
- Что произойдет, если ввести команду rm -rf / от имени суперпользователя?
- Для чего необходимо вводить пользовательский пароль при использовании команды sudo?
- Как вернуться в обычный режим из оболочки суперпользователя с помощью командной строки?
- Что подразумевается под термином "пакетные менеджеры" в контексте операционных систем?
- Какую роль выполняет пакетный менеджер при установке программного обеспечения?
- В чем разница между apt и apt-get?
- Какие аргументы передаются программе apt для установки, удаления или обновления пакетов?
- Как можно найти точное имя пакета, если оно неизвестно, с помощью утилиты apt?
- Опиши процесс установки пакета с использованием команды apt install.
Программа курса:
- Описание курса
- История операционной системы Linux
- Основы лицензии GNU GPL и её преимущества
- Функции и структура ядра Linux-систем
- Структура и каталоги файловой системы Linux
- Основные типы файлов в системе Linux
- Интерфейс командной строки в Linux
- Командная оболочка Bash в Linux
- Использование параметров команд в Bash
- Использование Ctrl+C, Ctrl+D и Ctrl+Z
- Автодополнение и история команд в Bash
- Перенаправление ввода и вывода в Bash
- Документация Linux и Man-страницы
- Абсолютная и относительная адресация в Linux
- Команда ls - как просматривать каталоги в Linux
- Копирование, перемещение и удаление в Linux
- Жесткие и символьные ссылки в Linux
- Создание жестких и символических ссылок в Linux
- Права доступа к файлам и каталогам в Linux
- Изменение прав доступа к файлам с помощью chmod
- Использование шаблонов имен файлов в Linux
- Поиск файлов в Linux с помощью команды find
- Использование команды sudo в Linux
- Управление пакетами с помощью APT в Linux