2.1 Терминал и Shell
Терминал — это текстовый интерфейс для взаимодействия с операционной системой. Shell — это программа, которая интерпретирует ваши команды и выполняет их.
Что такое Shell
Shell — это командная оболочка, которая:
- Принимает команды от пользователя
- Интерпретирует их
- Выполняет соответствующие программы
- Возвращает результат
Популярные Shell
Bash (Bourne Again Shell)
- Самый популярный shell в Linux
- Совместим с sh
- Много возможностей для автоматизации
Zsh (Z Shell)
- Современная альтернатива bash
- Улучшенное автодополнение
- Темы и плагины
Открытие терминала
# Открыть терминал в Ubuntu/Linux Mint
Ctrl + Alt + T
# Или через меню приложений
# Найти "Терминал" или "Terminal"
2.2 Файловая система Linux
В Linux все организовано в виде единого дерева каталогов, начинающегося с корневого каталога /
.
Иерархия каталогов
/
├── bin/ # Основные исполняемые файлы
├── boot/ # Файлы загрузчика
├── dev/ # Устройства
├── etc/ # Конфигурационные файлы
├── home/ # Домашние каталоги пользователей
├── lib/ # Библиотеки
├── media/ # Съемные носители
├── mnt/ # Точки монтирования
├── opt/ # Дополнительное ПО
├── proc/ # Информация о процессах
├── root/ # Домашний каталог root
├── run/ # Временные файлы
├── sbin/ # Системные исполняемые файлы
├── srv/ # Данные сервисов
├── sys/ # Системная информация
├── tmp/ # Временные файлы
├── usr/ # Пользовательские программы
└── var/ # Переменные данные
Назначение основных каталогов
/bin — основные команды системы (ls, cp, mv, rm)
/home — домашние каталоги пользователей
/etc — конфигурационные файлы системы
/var — логи, кэш, временные данные
/root — домашний каталог администратора
2.3 Пути и навигация
Путь — это адрес файла или каталога в файловой системе. В Linux используются два типа путей.
Абсолютные пути
Начинаются с /
и указывают полный путь от корня файловой системы:
/home/user/documents/file.txt
/etc/passwd
/usr/bin/python3
Относительные пути
Указывают путь относительно текущего каталога:
documents/file.txt # файл в подкаталоге
../other/file.txt # файл в родительском каталоге
./script.sh # файл в текущем каталоге
Специальные символы
Символы навигации
- . — текущий каталог
- .. — родительский каталог
- ~ — домашний каталог пользователя
- - — предыдущий каталог
2.4 Команды навигации
Основные команды для навигации по файловой системе Linux.
pwd — показать текущий каталог
pwd
# Вывод: /home/user
ls — список файлов и каталогов
ls # простой список
ls -l # подробный список
ls -a # включая скрытые файлы
ls -h # размеры в удобном формате
ls -la # комбинация флагов
cd — смена каталога
cd /home/user # перейти в абсолютный путь
cd documents # перейти в подкаталог
cd .. # перейти в родительский каталог
cd ~ # перейти в домашний каталог
cd - # вернуться в предыдущий каталог
file — определение типа файла
file document.txt # text file
file image.jpg # JPEG image
file script.sh # shell script
Полезные комбинации
ls -la ~ # подробный список домашнего каталога
cd /var/log && ls # перейти в /var/log и показать содержимое
pwd && ls -la # показать путь и содержимое