базовые команды linux

Цель урока: Понять, как организована файловая система в Linux, и освоить базовые команды для перемещения по ней. Это как научиться читать карту, прежде чем отправиться в путешествие.

Часть 1: Теория. Как устроен мир файлов в Linux?

В отличие от Windows с ее дисками C:D: и так далее, в Linux всё устроено иначе. Главный принцип, который нужно запомнить: "В Linux почти всё представлено как файл или файловый объект (сокет, канал и т.п.)". Устройства (диски, клавиатура), сетевые подключения, процессы - всё представлено в виде файлов, расположенных в единой древовидной структуре.

У этого дерева есть корень, который обозначается как / (слэш). Все остальные файлы и каталоги (папки) являются его ветвями.

Структура каталогов не хаотична, она стандартизирована и называется FHS (Filesystem Hierarchy Standard). Знание основных каталогов - это ключ к быстрому поиску нужных файлов и пониманию, где что лежит.

структура linux

Вот самые важные каталоги, с которыми вы будете постоянно работать:

  • / - Корень (root directory): Самый главный каталог. Начало всего.

  • /root - Домашний каталог суперпользователя root: Когда вы входите в систему как root, вы попадаете именно сюда. Ваши личные файлы как администратора лежат здесь.

  • /home - Домашние каталоги пользователей: Здесь для каждого обычного пользователя (например, ivanmaria) создается свой каталог (/home/ivan/home/maria), где он хранит свои файлы.

  • /usrОперационная системаБольшинство программ, библиотек и документации, установленных из репозиториев дистрибутива. Содержимое редко изменяется во время работы.

  • /etc - Конфигурационные файлы: Сердце настроек всей вашей системы и программ. Хотите поменять настройки веб-сервера, SSH или базы данных? Вам сюда. Название происходит от "etcetera" (и так далее). Расшифровка “Editable Text Configuration” - популярный миф, у названия нет официальной аббревиатуры.

  • /var - Изменяемые данные (Variable files): Здесь хранится то, что постоянно меняется. Самое важное для администратора:

    • /var/log - Журналы (логи): Записи обо всем, что происходит в системе. Ошибки, попытки входа, работа программ - всё протоколируется здесь. Это главный инструмент для диагностики проблем.

    • /srv или /var/www/html - Файлы сайтов: Типичное место DocumentRoot для Apache в Debian/Ubuntu. Точный путь задаёт конфиг вашего веб‑сервера и не стандартизован FHS.

  • /usr/bin - Большинство пользовательских команд (ls, cp, mkdir).

  • /usr/sbin - Админ‑утилиты (часто не входят в $PATH обычных пользователей).

  • /bin и /sbin в современных дистрибутивах - это символические ссылки на /usr/bin и /usr/sbin, поэтому не удивляйтесь, увидев lrwxrwxrwx при ls -l /bin.

  • /tmp - Временные файлы: Сюда программы и система складывают временные файлы. Очистка и сроки хранения регулируются systemd‑tmpfiles или cron‑скриптами и зависят от дистрибутива.

Часть 2: Практика. Команды для ориентирования в пространстве

Подключитесь к своему серверу по SSH. Сейчас мы изучим три кита навигации.

1. pwd (Print Working Directory) - Где я нахожусь?

Эта команда показывает ваш текущий рабочий каталог (полный путь от корня /).

  • Пример (сразу после входа в систему под root, выполните):

    pwd
  • Результат:

    /root

    Система говорит: "Вы находитесь в каталоге /root".

pwd linux

2. ls (List) - Что вокруг меня?

Эта команда показывает содержимое текущего каталога (файлы и другие каталоги). У нее есть полезные опции (ключи):

  • ls -l - Показать детальный список.

  • ls -a - Показать все файлы, включая скрытые (те, что начинаются с точки .).

  • ls -h - Показать размеры файлов в "человекочитаемом" виде (килобайты, мегабайты). Используется совместно с -l или -s.

Опции можно и нужно комбинировать. Самый частый вариант: ls -lah.

ls -lah

  • Пример:

    # Посмотрим, что лежит в каталоге /etc
    ls -lah /etc
  • Результат (фрагмент):

    drwxr-xr-x 133 root root 12K июл 18 10:45 .
    drwxr-xr-x  19 root root 4.0K июн 29 07:15 ..
    -rw-r--r--   1 root root 3.0K апр 12 2022 adduser.conf
    -rw-r--r--   1 root root  755B сен 23 2021 debian_version
    drwxr-xr-x   2 root root 4.0K июл 18 10:45 default
    drwxr-xr-x   4 root root 4.0K июн 29 07:16 ssh
    • drwxr-xr-x - тип и права доступа ( d означает directory/каталог).

    • root root - владелец и группа.

    • 12K - размер (благодаря ключу -h).

    • июл 18 10:45 - дата последнего изменения.

    • ssh - имя файла или каталога.

Ещё один пример вывода команды ls -lah /etc

la -lah

3. cd (Change Directory) - Идём гулять!

Эта команда изменяет ваш текущий рабочий каталог.

  • cd /путь/к/каталогу - Перейти в указанный каталог по абсолютному пути (от корня /).

  • cd имя_каталога - Перейти во вложенный каталог по относительному пути (относительно текущего места).

  • cd .. - Подняться на один уровень вверх.

  • cd (без всего) или cd ~ - Вернуться в свой домашний каталог (/root или /home/<user>).

  • cd - Вернуться в предыдущий каталог, где вы были до этого.

Часть 3: Ключевые понятия. Абсолютные и относительные пути

Это критически важная концепция.

  • Абсолютный путь всегда начинается с /. Он указывает точное местоположение файла или каталога в системе, вне зависимости от того, где вы находитесь сейчас.

    • Пример: cd /var/log - эта команда сработает из любой точки системы и всегда приведет вас в /var/log.

cd var log

  • Относительный путь никогда не начинается с /. Он отсчитывается от вашего текущего местоположения.

    • Пример: если вы находитесь в /var, то команда cd log приведет вас в /var/log. Но если будете в /homecd log выдаст ошибку, так как каталога log внутри /home нет.

cd home

Понимание командной строки:
Обратите внимание на вашу командную строку: root@my-server:~#

  • root - текущий пользователь.

  • my-server - имя хоста (сервера).

  • ~ - текущий каталог. Тильда ~ это сокращение для домашнего каталога. Если вы перейдете в /etc, то тильда сменится на /etc.

  • # - символ означает, что вы работаете с правами суперпользователя root. У обычных пользователей там будет знак $.

rootserver

Итоги урока и домашнее задание

  • Что мы узнали:

    • В Linux почти всё - файл или файловый объект, и всё находится в едином древовидном каталоге с корнем /.

    • Мы познакомились со стандартом FHS и знаем назначение ключевых каталогов (/etc/var/log/home).

    • Мы освоили три главные команды навигации: pwdls и cd.

    • Мы поняли разницу между абсолютными и относительными путями.

  • Ваше второе задание:

    1. Подключитесь к серверу.

    2. С помощью pwd убедитесь, что вы находитесь в своём домашнем каталоге (для root это `/root`, для обычного пользователя - `/home/имя`).

    3. Перейдите в корневой каталог /. Как изменилась ваша командная строка?

    4. Используя команду ls -l, посмотрите на его содержимое. Найдите знакомые каталоги: etchomevar.

    5. Перейдите в каталог /var/log, используя абсолютный путь.

    6. Посмотрите его содержимое с помощью ls -lah. Вы увидите много файлов с расширением .log. Это и есть журналы системы. Часть файлов может не иметь .log, а логи systemd лежат в journal/.

    7. Вернитесь в свой домашний каталог, используя команду cd без аргументов.

    8. Теперь доберитесь до того же каталога `/var/log` относительными путями, используя команду cd .. столько раз, пока pwd не покажет `/`, а затем cd var и cd log.

    9. Используйте `cd -`, чтобы вернуться в предыдущий каталог (не обязательно в домашний, а туда, где вы были до последнего `cd`).

Экспериментируйте! "Сломать" систему этими командами невозможно. Чем больше вы будете "гулять" по каталогам, тем быстрее вы начнете чувствовать себя как дома.

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

Перейти к просмотру - УРОК №3.

подарок Промо-код: PROMO15 скидка 15%! огонь

Введите при оформлении первого заказа на сайте: Hosting-VDS.com

авторское право цифровые решения

Помог ли вам данный ответ? 1 Пользователи считают это полезным (1 голосов)